/* ════════════════════════════════════════════════════════════════════════
   SPEECHMASTER · Design-System (Navy & Kupfer)
   ════════════════════════════════════════════════════════════════════════ */
:root{
  --accent:#b8704f; --accent-rgb:184,112,79; --accent-ink:#fff; --accent-2:#e0a07f;
  --accent-soft:rgba(var(--accent-rgb),.11); --accent-soft-2:rgba(var(--accent-rgb),.2);
  --navy:#1b2330; --navy-2:#243044;
  --leaf:#4f7a5a; --gold:#b58a35; --ok:#2f8f5b; --warn:#c7811c; --danger:#c43a3a; --info:#3a6fc4;
  --font-ui:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-display:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --font-editor:"Iowan Old Style","Charter","Bitstream Charter","Palatino Linotype",Georgia,serif;
  --font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --fs:15px; --editor-fs:18px; --editor-lh:1.65; --paper-w:860px;
  --r-sm:8px; --r:12px; --r-lg:18px; --r-xl:24px;
  --pad:18px; --gap:16px;
  --sidebar-w:250px; --topbar-h:60px;
  /* Abstand zu Notch/Statusleiste (iPhone, iPad, Android) – bei viewport-fit=cover nötig */
  --sat:env(safe-area-inset-top,0px); --sab:env(safe-area-inset-bottom,0px); --sal:env(safe-area-inset-left,0px); --sar:env(safe-area-inset-right,0px);
  --top-h:calc(var(--topbar-h) + var(--sat));
  --ease:cubic-bezier(.2,.8,.2,1); --dur:.22s;
  color-scheme:light;
}
:root,[data-theme="light"]{
  --bg:#f3f1ee; --bg-grad-1:rgba(184,112,79,.08); --bg-grad-2:rgba(27,35,48,.06);
  --surface:#ffffff; --surface-2:#f9f7f5; --surface-3:#efece8; --elev:#ffffff;
  --border:rgba(27,35,48,.09); --border-2:rgba(27,35,48,.17);
  --text:#18202b; --text-2:#56606d; --text-3:#8a929c;
  --shadow-sm:0 1px 2px rgba(20,26,34,.06),0 1px 1px rgba(20,26,34,.04);
  --shadow:0 4px 18px -6px rgba(20,26,34,.16),0 2px 6px -2px rgba(20,26,34,.07);
  --shadow-lg:0 24px 60px -16px rgba(20,26,34,.3),0 8px 20px -8px rgba(20,26,34,.12);
  --glass:rgba(255,255,255,.74); --glass-border:rgba(255,255,255,.6);
  --paper:#fffefc; --paper-shadow:0 1px 3px rgba(0,0,0,.05),0 12px 40px -18px rgba(27,35,48,.22);
  --mark:#fff1a6; --ph-bg:#fde7b0; --ph-text:#6b4a00;
  --bible-bg:rgba(var(--accent-rgb),.07); --regie:#8a6a12; --dispo:#2c3a4f;
}
[data-theme="dark"]{
  color-scheme:dark;
  --bg:#10151c; --bg-grad-1:rgba(184,112,79,.14); --bg-grad-2:rgba(60,90,140,.10);
  --surface:#171d26; --surface-2:#1c2330; --surface-3:#252e3c; --elev:#1d2430;
  --border:rgba(255,255,255,.08); --border-2:rgba(255,255,255,.15);
  --text:#eef1f5; --text-2:#aeb7c3; --text-3:#7d8794;
  --shadow-sm:0 1px 2px rgba(0,0,0,.4);
  --shadow:0 6px 20px -6px rgba(0,0,0,.55),0 2px 6px -2px rgba(0,0,0,.4);
  --shadow-lg:0 30px 70px -18px rgba(0,0,0,.75);
  --glass:rgba(23,29,38,.74); --glass-border:rgba(255,255,255,.07);
  --paper:#1a212b; --paper-shadow:0 1px 3px rgba(0,0,0,.4),0 18px 50px -20px rgba(0,0,0,.8);
  --mark:#6b5a12; --ph-bg:#5a4410; --ph-text:#ffe2a0;
  --bible-bg:rgba(var(--accent-rgb),.14); --regie:#e2bf5a; --dispo:#c9d4e3;
  --accent-soft:rgba(var(--accent-rgb),.18); --accent-soft-2:rgba(var(--accent-rgb),.3);
}
[data-theme="sepia"]{
  --bg:#efe7d8; --bg-grad-1:rgba(184,112,79,.07); --bg-grad-2:rgba(120,95,40,.08);
  --surface:#fbf6ec; --surface-2:#f6efe1; --surface-3:#ece3d0; --elev:#fdf9f1;
  --border:rgba(80,55,20,.12); --border-2:rgba(80,55,20,.2);
  --text:#3a2e21; --text-2:#6b5a45; --text-3:#98866d;
  --shadow-sm:0 1px 2px rgba(80,55,20,.08);
  --shadow:0 4px 18px -6px rgba(80,55,20,.18),0 2px 6px -2px rgba(80,55,20,.08);
  --shadow-lg:0 24px 60px -16px rgba(80,55,20,.3);
  --glass:rgba(251,246,236,.8); --glass-border:rgba(255,255,255,.5);
  --paper:#fdf8ee; --paper-shadow:0 1px 3px rgba(80,55,20,.08),0 12px 40px -18px rgba(80,55,20,.3);
  --mark:#f3de8a; --ph-bg:#f1d79a; --ph-text:#5a3f00;
  --bible-bg:rgba(var(--accent-rgb),.08); --regie:#7a5b0c; --dispo:#4a3a26;
}
[data-theme="oled"]{
  color-scheme:dark;
  --bg:#000; --bg-grad-1:rgba(184,112,79,.12); --bg-grad-2:rgba(0,0,0,0);
  --surface:#0b0c0e; --surface-2:#111317; --surface-3:#1a1d22; --elev:#101216;
  --border:rgba(255,255,255,.07); --border-2:rgba(255,255,255,.14);
  --text:#ecedf0; --text-2:#a6abb3; --text-3:#6d737c;
  --shadow-sm:none; --shadow:0 0 0 1px rgba(255,255,255,.05); --shadow-lg:0 0 0 1px rgba(255,255,255,.08),0 30px 80px -20px rgba(0,0,0,.9);
  --glass:rgba(0,0,0,.8); --glass-border:rgba(255,255,255,.06);
  --paper:#07080a; --paper-shadow:0 0 0 1px rgba(255,255,255,.06);
  --mark:#5d4f0c; --ph-bg:#4d3a0a; --ph-text:#ffd98a;
  --bible-bg:rgba(var(--accent-rgb),.15); --regie:#d9b54f; --dispo:#c9d4e3;
  --accent-soft:rgba(var(--accent-rgb),.18); --accent-soft-2:rgba(var(--accent-rgb),.3);
}
[data-contrast="1"]{--text-2:var(--text);--text-3:var(--text-2);--border:var(--border-2)}
[data-density="compact"]{--pad:12px;--gap:10px;--topbar-h:52px;--top-h:calc(52px + var(--sat))}
[data-density="comfy"]{--pad:24px;--gap:22px}
[data-radius="eckig"]{--r-sm:3px;--r:5px;--r-lg:7px;--r-xl:9px}
[data-radius="sehr-rund"]{--r-sm:12px;--r:18px;--r-lg:26px;--r-xl:32px}
[data-motion="0"] *,[data-motion="0"] *::before,[data-motion="0"] *::after{animation:none!important;transition:none!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.lock-logo,.lock .glow,.boot img,.hero::before,body::before{animation:none!important}}

*{box-sizing:border-box}
html{font-size:var(--fs);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}
body::before{content:"";position:fixed;inset:-20vmax;z-index:-1;pointer-events:none;
  background:radial-gradient(40vmax 40vmax at 10% 6%,var(--bg-grad-1),transparent 60%),radial-gradient(38vmax 38vmax at 94% 90%,var(--bg-grad-2),transparent 60%)}
[data-effects="1"] body::before{animation:bgdrift 40s ease-in-out infinite alternate}
@keyframes bgdrift{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(3vmax,-2vmax,0) scale(1.06)}}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:rgba(var(--accent-rgb),.25)}
h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.01em;line-height:1.25}
.serif{font-family:var(--font-display)}
.muted{color:var(--text-2)}.faint{color:var(--text-3)}
.small{font-size:.86rem}.tiny{font-size:.76rem}
.nowrap{white-space:nowrap}.grow{flex:1 1 auto;min-width:0}
.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.row.top{align-items:flex-start}
.col{display:flex;flex-direction:column;gap:10px}
.between{justify-content:space-between}.center{justify-content:center}
.hidden{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.clamp4{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.clamp6{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.ico-none{display:none}
.ico{width:18px;height:18px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.ico.sm{width:15px;height:15px}.ico.lg{width:22px;height:22px}.ico.xl{width:30px;height:30px}
.ico.fill{fill:currentColor;stroke:none}
kbd{font-family:var(--font-mono);font-size:.72rem;padding:1px 6px;border-radius:6px;border:1px solid var(--border-2);background:var(--surface-2);color:var(--text-2)}

/* ─── App-Layout ─────────────────────────────────────────────────────── */
.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}
[data-sidebar="collapsed"] .app{grid-template-columns:72px 1fr}
.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:6px;padding:16px 12px;border-right:1px solid var(--border);background:var(--glass);backdrop-filter:saturate(1.4) blur(18px);-webkit-backdrop-filter:saturate(1.4) blur(18px);z-index:30}
[data-glass="0"] .sidebar,[data-glass="0"] .topbar,[data-glass="0"] .tabbar{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface)}
.brand{display:flex;align-items:center;gap:11px;padding:4px 8px 14px;cursor:pointer;user-select:none}
.brand img{width:40px;height:40px;border-radius:11px;box-shadow:0 6px 16px -6px rgba(var(--accent-rgb),.6),0 0 0 1px rgba(255,255,255,.06);object-fit:cover}
.brand b{display:block;font-family:var(--font-display);font-size:1.22rem;letter-spacing:.01em;font-weight:600}
.brand small{display:block;color:var(--text-3);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;margin-top:-2px}
/* Eingeklappt gilt nur für die Menü-Seitenleiste – .nav-item gibt es auch in den Einstellungen */
[data-sidebar="collapsed"] .sidebar .brand div,[data-sidebar="collapsed"] .sidebar .nav-item span,[data-sidebar="collapsed"] .sidebar .nav-sec,[data-sidebar="collapsed"] .sidebar .search-trigger span,[data-sidebar="collapsed"] .sidebar .search-trigger kbd,[data-sidebar="collapsed"] .sidebar .sb-foot .label{display:none}
[data-sidebar="collapsed"] .sidebar .nav-item,[data-sidebar="collapsed"] .sidebar .search-trigger{justify-content:center;padding:10px}
.search-trigger{display:flex;align-items:center;gap:9px;width:100%;padding:9px 11px;margin-bottom:8px;border-radius:var(--r);border:1px solid var(--border);background:var(--surface);color:var(--text-3);cursor:pointer;transition:border-color var(--dur),box-shadow var(--dur)}
.search-trigger:hover{border-color:var(--border-2);box-shadow:var(--shadow-sm)}
.search-trigger span{flex:1;text-align:left}
.nav{display:flex;flex-direction:column;gap:2px;overflow:auto;flex:1;margin:0 -4px;padding:0 4px}
.nav-sec{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:14px 10px 6px;font-weight:650}
.nav-item{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r-sm);color:var(--text-2);cursor:pointer;border:0;background:none;width:100%;text-align:left;font-weight:520;position:relative;transition:background var(--dur),color var(--dur)}
.nav-item:hover{background:var(--surface-3);color:var(--text);text-decoration:none}
.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:620}
[data-theme="dark"] .nav-item.active,[data-theme="oled"] .nav-item.active{color:var(--accent-2)}
.nav-item.active::before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}
.nav-item .badge{margin-left:auto}
.sb-foot{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border);padding-top:10px}
.sb-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);cursor:pointer}
.sb-user:hover{background:var(--surface-3)}
[data-sidebar="collapsed"] .sidebar .sb-user div{display:none}
.main{min-width:0;display:flex;flex-direction:column}
.topbar{position:sticky;top:0;z-index:20;height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 24px;background:var(--bg);border-bottom:1px solid var(--border)}   /* klar, ohne Verschwommen-Effekt */
.topbar h1{font-size:1.12rem;font-weight:650;display:flex;align-items:center;gap:10px;min-width:0}
.topbar h1 .crumb{color:var(--text-3);font-weight:500}
.topbar .actions{margin-left:auto;display:flex;gap:8px;align-items:center}
.btn.menu-btn{display:none}
.view{padding:26px;max-width:1520px;width:100%;margin:0 auto;flex:1}
.view.full{max-width:none;padding:0}
.view-enter{animation:viewin .3s var(--ease)}
@keyframes viewin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tabbar{display:none}
.banner{display:flex;align-items:center;gap:10px;padding:10px 24px;background:rgba(199,129,28,.12);border-bottom:1px solid rgba(199,129,28,.25);font-size:.9rem}
.banner>span{min-width:0;flex:1}
.banner code{font-size:.84em;word-break:break-all;background:rgba(0,0,0,.06);padding:1px 5px;border-radius:5px}

/* ─── Buttons & Formulare ────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;border-radius:var(--r-sm);border:1px solid var(--border-2);background:var(--surface);color:var(--text);cursor:pointer;font-weight:560;font-size:.92rem;line-height:1.2;white-space:nowrap;transition:transform .12s var(--ease),background var(--dur),border-color var(--dur),box-shadow var(--dur),color var(--dur);user-select:none;text-decoration:none!important}
.btn:hover{border-color:var(--text-3);box-shadow:var(--shadow-sm)}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.5;pointer-events:none}
.btn.primary{background:linear-gradient(135deg,rgba(var(--accent-rgb),1),rgba(var(--accent-rgb),.86));border-color:var(--accent);color:var(--accent-ink);box-shadow:0 6px 16px -8px rgba(var(--accent-rgb),.85)}
.btn.primary:hover{filter:brightness(1.07);box-shadow:0 10px 22px -10px rgba(var(--accent-rgb),.95)}
.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}
.btn.soft{background:var(--accent-soft);border-color:transparent;color:var(--accent)}
[data-theme="dark"] .btn.soft,[data-theme="oled"] .btn.soft{color:var(--accent-2)}
.btn.soft:hover{background:var(--accent-soft-2)}
.btn.ghost{background:transparent;border-color:transparent;color:var(--text-2)}
.btn.ghost:hover{background:var(--surface-3);color:var(--text);box-shadow:none}
.btn.danger{color:var(--danger)}
.btn.danger.solid{background:var(--danger);border-color:var(--danger);color:#fff}
.btn.sm{padding:5px 10px;font-size:.83rem;gap:5px}
.btn.xs{padding:3px 7px;font-size:.76rem;gap:4px;border-radius:6px}
.btn.lg{padding:12px 20px;font-size:1.02rem;border-radius:var(--r)}
.btn.icon{padding:7px;width:36px;height:36px}
.btn.icon>span:empty{display:none}   /* leere Beschriftung verschiebt das Symbol (Abstand) */
.btn.icon.sm{width:30px;height:30px;padding:5px}
.btn.icon.xs{width:24px;height:24px;padding:3px}
.btn.block{width:100%}
.btn .ico{width:16px;height:16px}
.btn-group{display:inline-flex}
.btn-group .btn{border-radius:0}
.btn-group .btn:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm)}
.btn-group .btn:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0}
.btn-group .btn+.btn{margin-left:-1px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field[hidden]{display:none!important}
.field>label,.lbl{font-size:.78rem;font-weight:650;color:var(--text-2);letter-spacing:.01em}
.field .help{font-size:.78rem;color:var(--text-3)}
.input,.select,.textarea{width:100%;padding:9px 12px;border-radius:var(--r-sm);border:1px solid var(--border-2);background:var(--surface);color:var(--text);outline:none;transition:border-color var(--dur),box-shadow var(--dur);font-size:.95rem;min-height:38px}
.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.14)}
.input.sm,.select.sm{min-height:31px;padding:4px 9px;font-size:.86rem}
/* iOS/iPadOS: Datum/Uhrzeit nicht mit eigener Höhe/Breite der Systemsteuerung – gleich groß wie alle Felder, nie breiter als die Spalte */
input.input[type=date],input.input[type=time],input.input[type=datetime-local],input.input[type=month],input.input[type=week]{-webkit-appearance:none;appearance:none;display:block;min-width:0;max-width:100%;height:38px;line-height:1.2;text-align:left;background-clip:padding-box}
input.input.sm[type=date],input.input.sm[type=time],input.input.sm[type=datetime-local],input.input.sm[type=month]{height:31px}
input.input[type=date]::-webkit-date-and-time-value,input.input[type=time]::-webkit-date-and-time-value,input.input[type=datetime-local]::-webkit-date-and-time-value,input.input[type=month]::-webkit-date-and-time-value{text-align:left;margin:0;min-height:1.2em;line-height:1.2}
input.input[type=date]::-webkit-datetime-edit,input.input[type=time]::-webkit-datetime-edit{padding:0;line-height:1.2}
input.input[type=date]::-webkit-calendar-picker-indicator,input.input[type=time]::-webkit-calendar-picker-indicator{margin:0 0 0 4px;padding:0;opacity:.6}
.textarea{min-height:90px;resize:vertical;line-height:1.55}
.textarea.auto{resize:none;overflow:hidden;min-height:44px}
.select{appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}
.input-ico{position:relative}
.input-ico>.ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}
.input-ico .input{padding-left:38px;padding-right:34px}
/* kleines x zum Leeren (jedes Suchfeld) – sichtbar, sobald etwas eingegeben ist */
.input-ico>.sx{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--text-3);cursor:pointer;padding:0}
.input-ico>.sx .ico{width:14px;height:14px}
.input-ico>.sx:hover{background:rgba(var(--accent-rgb),.12);color:var(--text)}
.input-ico>.input:placeholder-shown~.sx,.input-ico>.input:disabled~.sx{display:none}
.input-ico>.input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}
@media (pointer:coarse){.input-ico>.sx{width:30px;height:30px;right:4px}}
.input.big{font-size:1.06rem;padding:12px 14px 12px 42px;border-radius:var(--r)}
.grid{display:grid;gap:var(--gap)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.span2{grid-column:span 2}.span3{grid-column:span 3}.spanall{grid-column:1/-1}
.switch{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;user-select:none}
.switch input{position:absolute;opacity:0;pointer-events:none}
.switch .track{width:42px;height:25px;border-radius:20px;background:var(--surface-3);border:1px solid var(--border-2);position:relative;transition:background var(--dur);flex:none}
.switch .track::after{content:"";position:absolute;top:2px;left:2px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform var(--dur) var(--ease)}
.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}
.switch input:checked+.track::after{transform:translateX(17px)}
.check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;border:1.8px solid var(--border-2);background:var(--surface);cursor:pointer;flex:none;transition:all var(--dur)}
.check.on{background:var(--ok);border-color:var(--ok);color:#fff}
.seg{display:inline-flex;padding:3px;border-radius:var(--r);background:var(--surface-3);gap:2px;flex-wrap:wrap}
.seg button{border:0;background:transparent;padding:6px 12px;border-radius:calc(var(--r) - 3px);cursor:pointer;color:var(--text-2);font-weight:560;font-size:.87rem;display:inline-flex;gap:6px;align-items:center}
.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}
.seg.sm button{padding:4px 9px;font-size:.8rem}
input[type=range]{accent-color:var(--accent);width:100%}
input[type=color]{width:44px;height:34px;border:1px solid var(--border-2);border-radius:var(--r-sm);padding:2px;background:var(--surface);cursor:pointer}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}

/* ─── Karten, Chips, Badges ──────────────────────────────────────────── */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--pad);position:relative}
[data-cardstyle="flat"] .card{box-shadow:none}
[data-cardstyle="lifted"] .card{box-shadow:var(--shadow)}
.card.hover{transition:transform var(--dur) var(--ease),box-shadow var(--dur),border-color var(--dur);cursor:pointer}
.card.hover:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--border-2)}
.card-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.card-h h3{font-size:1rem;display:flex;align-items:center;gap:8px}
.card-h .actions{margin-left:auto;display:flex;gap:6px}
.card.glow{overflow:hidden}
.card.glow::after{content:"";position:absolute;inset:auto -30% -60% auto;width:70%;height:120%;background:radial-gradient(closest-side,rgba(var(--accent-rgb),.12),transparent);pointer-events:none}
.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:30px;font-size:.77rem;font-weight:560;background:var(--surface-3);color:var(--text-2);border:1px solid transparent;cursor:default;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;line-height:1.35}
.chip.click{cursor:pointer}.chip.click:hover{border-color:var(--border-2);color:var(--text)}
.chip.on{background:var(--accent);color:var(--accent-ink)}
.chip.accent{background:var(--accent-soft);color:var(--accent)}
[data-theme="dark"] .chip.accent,[data-theme="oled"] .chip.accent{color:var(--accent-2)}
.chip.leaf{background:rgba(79,122,90,.14);color:var(--leaf)}
.chip.warn{background:rgba(199,129,28,.14);color:var(--warn)}
.chip.ok{background:rgba(47,143,91,.13);color:var(--ok)}
.chip.info{background:rgba(58,111,196,.12);color:var(--info)}
.chip.navy{background:var(--navy);color:#fff}
.chip.bible{background:var(--bible-bg);color:var(--accent);cursor:pointer;font-family:var(--font-ui)}
[data-theme="dark"] .chip.bible,[data-theme="oled"] .chip.bible{color:var(--accent-2)}
.chip.bible:hover{background:var(--accent-soft-2)}
.chip.bible.read{background:var(--accent);color:#fff}
.chip.src{background:rgba(58,111,196,.1);color:var(--info);cursor:pointer}
.chip.src:hover{background:rgba(58,111,196,.2)}
.chip.img{background:rgba(79,122,90,.13);color:var(--leaf);cursor:pointer}
.chip .ico{width:13px;height:13px}
.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;font-size:.72rem;font-weight:700;background:var(--surface-3);color:var(--text-2)}
.badge.accent{background:var(--accent);color:var(--accent-ink)}
.dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}
.avatar{width:40px;height:40px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:650;color:#fff;background:linear-gradient(135deg,var(--navy-2),var(--navy));font-size:.95rem;overflow:hidden;box-shadow:0 0 0 2px rgba(var(--accent-rgb),.35)}
.avatar.sm{width:30px;height:30px;font-size:.76rem}
.divider{height:1px;background:var(--border);margin:14px 0;border:0}
.empty{text-align:center;padding:48px 20px;color:var(--text-2)}
.empty>.ico{display:block;width:44px;height:44px;color:var(--text-3);stroke-width:1.4;margin:0 auto 10px}
.empty h3{color:var(--text);margin-bottom:6px;font-family:var(--font-display);font-size:1.28rem;font-weight:600}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:.92rem}
.kv dt{color:var(--text-3)}.kv dd{margin:0}
.progress{height:7px;border-radius:6px;background:var(--surface-3);overflow:hidden}
.progress>i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent),rgba(var(--accent-rgb),.65));transition:width .6s var(--ease)}
.progress.ok>i{background:linear-gradient(90deg,var(--ok),#5bbf86)}
.progress.warn>i{background:linear-gradient(90deg,var(--warn),#e6a84c)}
.progress.bad>i{background:linear-gradient(90deg,var(--danger),#e06a6a)}
.skeleton{border-radius:var(--r-sm);background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-2) 37%,var(--surface-3) 63%);background-size:400% 100%;animation:shimmer 1.3s infinite}
@keyframes shimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}
.spin{width:18px;height:18px;border:2.2px solid var(--border-2);border-top-color:var(--accent);border-radius:50%;animation:rot .8s linear infinite;display:inline-block;vertical-align:middle}
@keyframes rot{to{transform:rotate(360deg)}}
.section-title{display:flex;align-items:center;gap:10px;margin:26px 0 12px}
.section-title h2{font-size:1.04rem}
.section-title .line{flex:1;height:1px;background:var(--border)}
.page-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.page-head h2{font-family:var(--font-display);font-size:1.95rem;font-weight:600;letter-spacing:-.01em}
.page-head p{margin:4px 0 0;color:var(--text-2);max-width:760px}
.page-head .actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{padding:10px 14px;border:0;background:none;color:var(--text-2);font-weight:580;cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap;display:inline-flex;gap:7px;align-items:center}
.tab:hover{color:var(--text)}
.tab.on{color:var(--accent);border-bottom-color:var(--accent)}
.tab .badge{height:18px;min-width:18px;font-size:.68rem}
.list{display:flex;flex-direction:column}
.list-item{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--r-sm);cursor:pointer;transition:background var(--dur)}
.list-item:hover{background:var(--surface-3)}
.list-item+.list-item{border-top:1px solid var(--border)}
.table{width:100%;border-collapse:collapse;font-size:.9rem}
.table th{text-align:left;font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:650;padding:8px 10px;border-bottom:1px solid var(--border)}
.table td{padding:9px 10px;border-bottom:1px solid var(--border);vertical-align:top}
.table tr:hover td{background:var(--surface-2)}
.note{padding:12px 14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--border);font-size:.9rem;color:var(--text-2)}
.note.accent{background:var(--accent-soft);border-color:transparent;color:var(--text)}
.note.warn{background:rgba(199,129,28,.1);border-color:rgba(199,129,28,.25);color:var(--text)}
.note.ok{background:rgba(47,143,91,.1);border-color:rgba(47,143,91,.25);color:var(--text)}
.note.info{background:rgba(58,111,196,.08);border-color:rgba(58,111,196,.2);color:var(--text)}
.note b{color:var(--text)}
.check-row{display:flex;gap:10px;align-items:flex-start;padding:9px 4px;border-bottom:1px solid var(--border);font-size:.88rem}
.check-row .ico{margin-top:2px}
.check-row.ok .ico{color:var(--ok)}.check-row.warn .ico{color:var(--warn)}.check-row.bad .ico{color:var(--danger)}.check-row.info .ico{color:var(--info)}
.stat{display:flex;flex-direction:column;gap:2px}
.stat .n{font-size:1.9rem;font-weight:700;letter-spacing:-.02em;font-family:var(--font-display);line-height:1.1}
.stat .l{color:var(--text-3);font-size:.8rem;font-weight:560}
.drop-hint{border:2px dashed var(--border-2);border-radius:var(--r-lg);padding:26px;text-align:center;color:var(--text-2);transition:border-color var(--dur),background var(--dur);cursor:pointer}
.drop-hint:hover,.drop-hint.over{border-color:var(--accent);background:var(--accent-soft)}
.grip{cursor:grab;color:var(--text-3);touch-action:none;display:flex;justify-content:center;align-items:center}
.grip:active{cursor:grabbing}
.dragging{opacity:.55;box-shadow:var(--shadow-lg)!important}
.drop-before{box-shadow:0 -3px 0 0 var(--accent)!important}
.drop-after{box-shadow:0 3px 0 0 var(--accent)!important}
.bref{color:var(--accent);border-bottom:1px dotted rgba(var(--accent-rgb),.6);cursor:pointer}
.bref:hover{background:var(--accent-soft)}
.pref{color:var(--info);border-bottom:1px dotted rgba(58,111,196,.6);cursor:pointer}
.verse-card{font-family:var(--font-editor);font-size:1.04rem;line-height:1.7}
.verse-card sup,.vn{font-family:var(--font-ui);font-size:.64em;font-weight:700;color:var(--accent);margin:0 .22em 0 .1em;vertical-align:super}
.insp{font-family:var(--font-editor);font-size:1rem;line-height:1.65;color:var(--text)}
.insp p{margin:0 0 .6em}
mark.hl{background:rgba(var(--accent-rgb),.2);color:inherit;border-radius:3px;padding:0 1px}
.pulse{animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(var(--accent-rgb),.45)}50%{box-shadow:0 0 0 8px rgba(var(--accent-rgb),0)}}
.flash{animation:flash 1.6s var(--ease)}
@keyframes flash{0%{background:rgba(var(--accent-rgb),.28)}100%{background:transparent}}

/* ─── Overlays: Modal, Palette, Toast, Menü, Popover ─────────────────── */
.overlay{position:fixed;inset:0;z-index:240;background:rgba(10,14,20,.45);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 16px;animation:fadein .18s ease}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.modal{width:100%;max-width:640px;max-height:88vh;display:flex;flex-direction:column;background:var(--elev);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);border:1px solid var(--border);animation:modalin .26s var(--ease);overflow:hidden}
.modal.wide{max-width:980px}.modal.narrow{max-width:440px}.modal.xl{max-width:1200px}
@keyframes modalin{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.modal-h{display:flex;align-items:center;gap:10px;padding:18px 22px 12px}
.modal-h h3{font-size:1.15rem;font-family:var(--font-display);font-weight:600}
.modal-h .x{margin-left:auto}
.modal-b{padding:6px 22px 18px;overflow:auto;flex:1}
.modal-f{padding:14px 22px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;align-items:center;background:var(--surface-2);flex-wrap:wrap}
.palette{width:100%;max-width:680px;background:var(--elev);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);border:1px solid var(--border);overflow:hidden;animation:modalin .2s var(--ease)}
.palette input{width:100%;border:0;outline:0;background:transparent;padding:18px 20px 18px 52px;font-size:1.08rem}
.palette .pi{position:relative;border-bottom:1px solid var(--border)}
.palette .pi .ico{position:absolute;left:19px;top:50%;transform:translateY(-50%);color:var(--text-3)}
.palette .res{max-height:58vh;overflow:auto;padding:8px}
.palette .grp{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:10px 12px 4px;font-weight:650}
.palette .it{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--r-sm);cursor:pointer}
.palette .it.on{background:var(--accent-soft)}
.palette .it .s{font-size:.8rem;color:var(--text-3);margin-left:auto;max-width:50%;text-align:right}
.palette .it .ico{color:var(--text-3)}
.palette .it.on .ico{color:var(--accent)}
.toasts{position:fixed;right:20px;bottom:20px;z-index:300;display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none}
.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:var(--r);background:#18202b;color:#fff;box-shadow:var(--shadow-lg);font-size:.9rem;animation:toastin .32s var(--ease);max-width:440px}
.toast .btn{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:#fff}
[data-theme="dark"] .toast,[data-theme="oled"] .toast{background:#eef1f5;color:#18202b}
[data-theme="dark"] .toast .btn,[data-theme="oled"] .toast .btn{background:#fff;color:#18202b;border-color:#ccc}
.toast.ok .ico{color:#5bd08f}.toast.err .ico{color:#ff7a7a}
.toast.out{animation:toastout .3s var(--ease) forwards}
@keyframes toastin{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
@keyframes toastout{to{opacity:0;transform:translateX(30px)}}
.menu{position:fixed;z-index:260;width:max-content;min-width:220px;max-width:360px;max-height:70vh;overflow:auto;background:var(--elev);border:1px solid var(--border-2);border-radius:var(--r);box-shadow:var(--shadow-lg);padding:6px;animation:popin .15s var(--ease)}
.menu button{display:flex;width:100%;align-items:center;gap:10px;padding:8px 10px;border:0;background:none;border-radius:7px;cursor:pointer;text-align:left;font-size:.9rem;color:var(--text)}
.menu button:hover{background:var(--surface-3)}
.menu button.danger{color:var(--danger)}
.menu button .s{margin-left:auto;font-size:.76rem;color:var(--text-3);white-space:nowrap;flex:none}
.menu button > span:first-of-type{flex:1 1 auto;min-width:0}
.menu hr{border:0;height:1px;background:var(--border);margin:5px 2px}
.menu .mh{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:8px 10px 3px;font-weight:650}
.popover{position:fixed;z-index:270;max-width:460px;width:calc(100vw - 24px);box-sizing:border-box;overflow-wrap:break-word;background:var(--elev);border:1px solid var(--border-2);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:14px 16px;animation:popin .18s var(--ease)}
@keyframes popin{from{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}
.popover .ptitle{font-weight:700;color:var(--accent);margin-bottom:6px;display:flex;align-items:center;gap:8px}
.popover .ptext{font-family:var(--font-editor);font-size:.98rem;line-height:1.62;max-height:340px;overflow:auto}
.popover .pact{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.popover>*{max-width:100%;min-width:0}
.popover.pop-wide{max-width:560px}
.vpop-h{display:flex;align-items:baseline;justify-content:space-between;gap:6px 12px;flex-wrap:wrap;margin-bottom:8px;min-width:0}
.vpop-h b{color:var(--accent)}
.vpop .verse-card{max-height:46vh;overflow:auto;overflow-wrap:break-word;hyphens:auto}
/* Reiterleisten: Pfeile zum Scrollen, Umsortieren durch langes Drücken */
.tabs-wrap{position:relative;margin-bottom:18px}
.tabs-wrap > .tabs{margin-bottom:0}
.tabs-arr{position:absolute;top:0;bottom:1px;width:38px;border:0;padding:0;display:grid;place-items:center;color:var(--text-2);cursor:pointer;z-index:2}
.tabs-arr[hidden]{display:none}
/* „hidden“ muss auch bei Knöpfen wirken (.btn setzt display) */
.btn[hidden],label[hidden]{display:none!important}
.tabs-arr.l{left:0;background:linear-gradient(90deg,var(--bg) 55%,transparent)}
.tabs-arr.r{right:0;background:linear-gradient(270deg,var(--bg) 55%,transparent)}
.tabs-arr:hover{color:var(--accent)}
.tabs .tab{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.tabs.sorting{cursor:grabbing}
.tabs .tab.drag{background:var(--surface);color:var(--accent);border-radius:10px 10px 0 0;box-shadow:0 8px 22px -8px rgba(0,0,0,.35);transform:translateY(-2px) scale(1.04);z-index:3;cursor:grabbing}

/* ─── Rede-Editor ────────────────────────────────────────────────────── */
.ed-wrap{display:grid;grid-template-columns:270px minmax(0,1fr) 400px;height:calc(100vh - var(--top-h));overflow:hidden}
[data-panel="closed"] .ed-wrap{grid-template-columns:270px minmax(0,1fr) 0}
[data-outline="closed"] .ed-wrap{grid-template-columns:0 minmax(0,1fr) 400px}
[data-outline="closed"][data-panel="closed"] .ed-wrap{grid-template-columns:0 minmax(0,1fr) 0}
.ed-outline{border-right:1px solid var(--border);overflow:auto;padding:14px 10px 40px;background:var(--surface-2)}
.ed-outline h5{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin:6px 8px 8px;display:flex;align-items:center;gap:6px}
.ol-item{display:flex;gap:8px;align-items:baseline;padding:5px 8px;border-radius:var(--r-sm);cursor:pointer;font-size:.84rem;color:var(--text-2);line-height:1.3}
.ol-item:hover{background:var(--surface-3);color:var(--text)}
.ol-item.sec{font-weight:700;color:var(--text);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;margin-top:8px}
.ol-item .t{margin-left:auto;font-size:.7rem;color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums}
.ol-item .t.over{color:var(--danger)}.ol-item .t.okk{color:var(--ok)}
.ol-item.cur{background:var(--accent-soft);color:var(--text)}
.ol-dot{width:7px;height:7px;border-radius:50%;background:var(--border-2);flex:none;transform:translateY(-1px)}
.ol-dot.done{background:var(--ok)}
.ed-center{display:flex;flex-direction:column;min-width:0;overflow:hidden;position:relative}
.ed-toolbar{display:flex;align-items:center;gap:2px;padding:7px 12px;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;position:relative;z-index:3}
.ed-toolbar .sep{width:1px;height:22px;background:var(--border);margin:0 5px}
.tb{border:0;background:none;padding:6px 7px;border-radius:7px;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:6px;font-size:.84rem;font-weight:560;white-space:nowrap}
.tb:hover{background:var(--surface-3);color:var(--text)}
.tb.on{background:var(--accent-soft);color:var(--accent)}
.tb .ico{width:17px;height:17px}
.tb-ai{color:var(--accent)!important;font-weight:650}
.ed-timeline{display:flex;gap:2px;height:30px;padding:5px 14px;background:var(--surface-2);border-bottom:1px solid var(--border);align-items:stretch}
.ed-timeline .seg-t{position:relative;border-radius:5px;background:var(--surface-3);overflow:hidden;cursor:pointer;min-width:6px}
.ed-timeline .seg-t i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,rgba(var(--accent-rgb),.55),rgba(var(--accent-rgb),.85))}
.ed-timeline .seg-t.over i{background:linear-gradient(90deg,rgba(196,58,58,.55),rgba(196,58,58,.85))}
.ed-timeline .seg-t span{position:relative;z-index:1;font-size:.68rem;font-weight:700;padding:0 6px;line-height:20px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.ed-scroll{flex:1;overflow:auto;padding:22px 22px 140px;scroll-behavior:smooth}
.ed-doc{max-width:var(--paper-w);margin:0 auto}
.ed-head{background:var(--paper);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--paper-shadow);padding:22px 26px 18px;margin-bottom:16px;position:relative;overflow:hidden}
.ed-head::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,var(--navy),var(--accent))}
.ed-head .kind{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:750}
.ed-head .ttl{font-family:var(--font-display);font-size:1.75rem;font-weight:600;line-height:1.2;outline:none;margin:4px 0 6px;border-radius:6px}
.ed-head .ttl:focus{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.15)}
.ed-head .meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ed-head .goal{margin-top:12px;padding:10px 12px;border-radius:var(--r);background:var(--surface-2);font-size:.9rem;color:var(--text-2);border-left:3px solid var(--navy);outline:none}
.ed-head .goal:empty::before{content:attr(data-placeholder);color:var(--text-3);font-style:italic}
.ed-head .goal b{color:var(--text)}
.blocks{display:flex;flex-direction:column;gap:8px}
.blk{position:relative;margin-left:calc(var(--lvl,0) * 24px);transition:margin-left .15s var(--ease)}
.blk-sec{display:flex;align-items:center;gap:10px;padding:12px 14px 12px 38px;margin-top:16px;border-radius:var(--r);background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;box-shadow:var(--shadow-sm)}
.blk-sec:first-child{margin-top:0}
.blk-sec .grip{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:rgba(255,255,255,.5)}
.blk-sec .sec-title{flex:1;font-weight:750;font-size:.88rem;letter-spacing:.07em;text-transform:uppercase;outline:none;min-width:40px;line-height:1.35}
.blk-sec .sec-time{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:650;white-space:nowrap}
.blk-sec .sec-time input{width:48px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;padding:2px 6px;font-size:.8rem;text-align:center}
.sec-bar{width:80px;height:6px;border-radius:4px;background:rgba(255,255,255,.18);overflow:hidden}
.sec-bar i{display:block;height:100%;background:#7fd3a2;border-radius:4px}
.sec-bar.over i{background:#ff8a7a}.sec-bar.low i{background:#f0c75e}
.blk-sec .btn{color:#fff;background:rgba(255,255,255,.1);border-color:transparent}
.blk-sec .btn:hover{background:rgba(255,255,255,.2)}
.blk-item{--kc:var(--navy);background:var(--paper);border:1px solid var(--border);border-radius:var(--r);padding:10px 12px 10px 34px;box-shadow:0 1px 2px rgba(0,0,0,.03);transition:border-color var(--dur),box-shadow var(--dur)}
.blk-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:var(--r) 0 0 var(--r);background:var(--kc);opacity:.85}
.blk-item:focus-within{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.08)}
.blk-item.sel{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}
.blk-item .grip{position:absolute;left:8px;top:11px}
.blk-item.done .blk-dispo::after{content:" ✓";color:var(--ok)}
.blk-item.opt{opacity:.72}
.blk-head{display:flex;align-items:flex-start;gap:8px;min-height:22px}
.kind-tag{font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--kc);background:color-mix(in srgb,var(--kc) 12%,transparent);padding:2px 7px;border-radius:5px;white-space:nowrap;cursor:pointer;margin-top:1px}
.blk-dispo{flex:1;font-weight:620;font-size:.93rem;color:var(--dispo);outline:none;line-height:1.45;border-radius:5px;min-width:30px}
.blk-dispo:empty::before{content:attr(data-placeholder);color:var(--text-3);font-weight:500}
.blk-dispo:focus{background:var(--surface-2)}
.blk-time{font-size:.72rem;color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;padding-top:2px}
.blk-hint{margin:4px 0 0;font-size:.82rem;color:var(--regie);font-style:italic;outline:none}
.blk-hint:empty{display:none}
.blk-text{margin-top:6px;font-family:var(--font-editor);font-size:var(--editor-fs);line-height:var(--editor-lh);outline:none;min-height:1.6em;color:var(--text);caret-color:var(--accent);word-wrap:break-word;border-radius:6px;padding:2px 4px;margin-left:-4px;margin-right:-4px}
.blk-text:empty::before{content:attr(data-placeholder);color:var(--text-3);font-style:italic;font-size:.9em}
.blk-text p{margin:0 0 .6em}.blk-text p:last-child{margin-bottom:0}
.blk-text:focus{background:rgba(var(--accent-rgb),.03)}
.blk-text .regie,.pt-text .regie{color:var(--regie);font-family:var(--font-ui);font-size:.72em;font-weight:700;background:rgba(199,160,30,.14);padding:.08em .45em;border-radius:5px;overflow-wrap:break-word;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.blk-text .emph{text-decoration:underline;text-decoration-style:dotted;text-decoration-color:var(--accent);text-underline-offset:3px;font-weight:600}
.blk-text .pause{color:var(--accent);font-weight:800;font-family:var(--font-ui);padding:0 .2em}
.blk-text mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 .1em}
.blk-text .ph{background:var(--ph-bg);color:var(--ph-text);border-radius:4px;padding:0 3px;font-family:var(--font-ui);font-size:.82em;font-weight:600}
.blk-text .tone-hit{background:rgba(196,58,58,.14);border-bottom:2px wavy var(--danger)}
.blk-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;align-items:center}
.blk-chips .add{opacity:0;transition:opacity var(--dur)}
.blk-item:hover .blk-chips .add,.blk-item:focus-within .blk-chips .add{opacity:1}
.blk-verses{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.vbox{padding:9px 12px 9px 14px;border-left:3px solid var(--accent);background:var(--bible-bg);border-radius:0 10px 10px 0;font-family:var(--font-editor);font-size:.93em;line-height:1.6;position:relative}
.vbox b.r{font-family:var(--font-ui);font-size:.8rem;color:var(--accent);margin-right:.35em;letter-spacing:.02em}
.vbox sup{font-family:var(--font-ui);font-size:.62em;font-weight:700;color:var(--accent);margin:0 .2em 0 .1em}
.vbox .x{position:absolute;right:6px;top:6px;opacity:0}
.vbox .mv{position:absolute;right:30px;top:6px;opacity:0;cursor:grab}
.vbox .mv:active{cursor:grabbing}
.vbox:hover .x,.vbox:hover .mv{opacity:1}
.vbox.loading{color:var(--text-3);font-style:italic}
.blk-srcs{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.sbox{padding:8px 12px;border-left:3px solid var(--info);background:rgba(58,111,196,.06);border-radius:0 10px 10px 0;font-size:.88rem;line-height:1.55}
.sbox .q{font-family:var(--font-editor);font-size:1.02em;color:var(--text)}
.blk-imgs{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.blk-imgs figure{margin:0;position:relative;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;width:150px}
.blk-imgs img{display:block;width:150px;height:96px;object-fit:cover}
.blk-imgs figcaption{font-size:.72rem;padding:3px 7px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.blk-imgs .slot{width:150px;height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:2px dashed var(--border-2);border-radius:10px;color:var(--text-3);font-size:.8rem;cursor:pointer}
.blk-imgs .slot:hover{border-color:var(--accent);color:var(--accent)}
.blk-tools{position:absolute;right:8px;top:-14px;display:flex;gap:2px;background:var(--elev);border:1px solid var(--border-2);border-radius:9px;padding:2px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .15s;z-index:4}
.blk:hover>.blk-tools,.blk:focus-within>.blk-tools{opacity:1;pointer-events:auto}
.blk-tools .btn{border:0}
.blk-add{display:flex;justify-content:center;height:10px;margin:-4px 0;position:relative;z-index:2}
.blk-add button{opacity:0;transform:scale(.8);transition:all .15s;border:1px solid var(--border-2);background:var(--elev);border-radius:20px;padding:1px 10px;font-size:.72rem;color:var(--text-2);cursor:pointer;display:flex;align-items:center;gap:4px;height:20px;margin-top:-5px}
.blk-add:hover button{opacity:1;transform:none}
.blk-add button:hover{color:var(--accent);border-color:var(--accent)}
.blk-end{margin-top:18px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.ed-status{display:flex;align-items:center;gap:14px;padding:6px 16px;border-top:1px solid var(--border);background:var(--surface);font-size:.78rem;color:var(--text-3);flex-wrap:wrap}
.ed-status b{color:var(--text-2);font-weight:650}
.save-dot{display:inline-flex;align-items:center;gap:6px}
.save-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok)}
.save-dot.dirty::before{background:var(--warn)}
.save-dot.err::before{background:var(--danger)}
.ed-panel{border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;background:var(--surface)}
.ed-panel .ptabs{display:flex;gap:1px;padding:6px 6px 0;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;flex:none}
.ed-panel .ptabs::-webkit-scrollbar{display:none}
.ptab{border:0;background:none;padding:8px 7px;font-size:.78rem;font-weight:650;color:var(--text-3);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;display:inline-flex;gap:4px;align-items:center}
.ptab.on{color:var(--accent);border-bottom-color:var(--accent)}
.ptab .ico{width:15px;height:15px}
.pbody{flex:1;overflow:auto;padding:14px}
.pitem{padding:10px 12px;border:1px solid var(--border);border-radius:var(--r);margin-bottom:8px;background:var(--surface);transition:border-color var(--dur),box-shadow var(--dur);cursor:pointer;position:relative}
.pitem:hover{border-color:rgba(var(--accent-rgb),.45);box-shadow:var(--shadow-sm)}
.pitem .t{font-weight:640;font-size:.88rem;margin-bottom:3px;display:flex;gap:6px;align-items:center}
.pitem .x{font-family:var(--font-editor);font-size:.87rem;line-height:1.5;color:var(--text-2)}
.pitem[draggable="true"]{cursor:grab}
.ed-mode-read .blk-text,.ed-mode-read .blk-dispo{pointer-events:none}
/* Manuskript- und Stichwort-Ansicht */
.manu{background:var(--paper);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--paper-shadow);padding:40px 54px 60px;font-family:var(--font-editor);font-size:var(--editor-fs);line-height:var(--editor-lh)}
.manu h2{font-family:var(--font-ui);font-size:.74em;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:2em 0 .8em;padding-top:.6em;border-top:1px solid var(--border);display:flex;gap:10px}
.manu h2 .t{margin-left:auto;color:var(--text-3);font-weight:600}
.manu h2:first-child{margin-top:0;border-top:0}
.manu .dp{font-family:var(--font-ui);font-size:.72em;font-weight:700;color:var(--text-3);margin:1.1em 0 .25em;cursor:pointer}
.manu p{margin:0 0 .7em}
.manu .vbox{margin:.6em 0 .9em}
.kw-list .kw{display:flex;gap:10px;padding:6px 0;border-bottom:1px dashed var(--border);font-family:var(--font-ui)}
.kw-list .kw b{min-width:48px;color:var(--text-3);font-size:.78rem;font-variant-numeric:tabular-nums}
/* LEVA: Lesen · Erklären · Veranschaulichen · Anwenden */
.leva-mini{display:inline-flex;gap:1px;margin-left:5px;font-family:var(--font-ui);font-size:.66rem;font-weight:800;letter-spacing:.02em}
.leva-mini i{font-style:normal;width:12px;height:14px;display:grid;place-items:center;border-radius:3px;background:rgba(0,0,0,.08);color:var(--text-3)}
.leva-mini i.on{background:var(--accent);color:#fff}
.leva-head{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.leva-ref{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;min-width:0}
.leva-ref b{color:var(--accent);font-size:1.05rem}
.leva-vt{padding:10px 14px;border-radius:var(--r);background:var(--surface-2);border-left:3px solid var(--accent);max-height:26vh;overflow:auto}
.leva-ctxt{margin-top:6px;padding:8px 12px;border-radius:8px;background:var(--surface-2);font-size:.92rem;opacity:.9;max-height:22vh;overflow:auto}
.leva-bar{gap:10px;align-items:center}
.leva-read{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.leva-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.leva-step{border:1px solid var(--border);border-radius:var(--r-lg);padding:12px;background:var(--surface);min-width:0;display:flex;flex-direction:column;gap:8px}
.leva-step.done{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
.leva-step header{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.leva-letter{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-weight:800;font-size:1.05rem;color:#fff;background:var(--accent);flex:none}
.leva-step[data-k="e"] .leva-letter{background:#3f7cac}.leva-step[data-k="v"] .leva-letter{background:#8a63b8}.leva-step[data-k="a"] .leva-letter{background:#3c9a6a}
.leva-tt{flex:1;min-width:140px;display:flex;flex-direction:column;line-height:1.2}
.leva-tt small{color:var(--text-3);font-size:.76rem}
.leva-len.over{color:var(--danger,#c0392b)}
.leva-tips{margin:0;padding:8px 10px 8px 26px;border-radius:8px;background:var(--surface-2);font-size:.82rem;line-height:1.45;display:flex;flex-direction:column;gap:3px}
.leva-tips li.ctx{list-style:'★ ';color:var(--text)}
.leva-step textarea{font-family:var(--font-editor);font-size:.98rem;line-height:1.55;resize:vertical}
.leva-step textarea.flash{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 40%,transparent);transition:box-shadow .3s}
.leva-alt{display:flex;flex-direction:column;gap:6px}
.leva-var{padding:8px 10px;border-radius:8px;border:1px dashed var(--border-2);background:var(--surface-2)}
.leva-vtext{font-family:var(--font-editor);font-size:.93rem;line-height:1.5;white-space:pre-wrap;outline:none}
.leva-sg{padding:8px 10px;border-radius:8px;background:var(--surface-2);margin-bottom:6px;display:flex;flex-direction:column;gap:4px}
.leva-sg-h{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap;min-width:0}
.leva-sg-b{font-size:.86rem;line-height:1.45;color:var(--text-2)}
@media (max-width:760px){.leva-steps{grid-template-columns:1fr}}
.pt-card .c-leva,.pt-text .c-leva{font-family:var(--font-ui);font-size:.5em;line-height:1.45;opacity:.85;margin:.35em 0;padding:.3em .6em;border-left:3px solid #e0a07f;background:rgba(224,160,127,.08);border-radius:4px}
.c-leva b{display:inline-block;min-width:1.2em;color:#e0a07f;margin-right:.3em}
/* Direkt entfernen: Zitate, Chips, Bilder, Bibeltexte */
.sbox{position:relative;padding-right:30px}
.sbox .q{cursor:pointer}
.sbox .sq-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}
.sbox .sq-foot .muted{flex:1 1 auto;min-width:0}
.sq-btns{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.sb-read{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:20px;padding:1px 8px 1px 6px;font:600 .72rem var(--font-ui);cursor:pointer;white-space:nowrap}
.sb-read svg{width:12px;height:12px}
.sb-read:hover{border-color:var(--info);color:var(--info)}
.sbox.silent{background:transparent;border-left-style:dashed}
.sbox.silent .q{color:var(--text-3)}
.sbox.silent .sb-read{border-style:dashed}
.sb-x,.fig-x{position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-2);display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .15s;padding:0;z-index:4}
.sb-x svg,.fig-x svg{width:12px;height:12px}
.sb-x:hover,.fig-x:hover{color:var(--danger);border-color:currentColor}
.sbox:hover .sb-x,.sbox:focus-within .sb-x,.blk-imgs figure:hover .fig-x{opacity:1}
.chip.rmv{position:relative}
.chip .cx{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:17px;height:17px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--text-2);display:none;place-items:center;cursor:pointer;box-shadow:-4px 0 6px -2px rgba(0,0,0,.08)}
.chip .cx svg{width:10px;height:10px}
.chip .cx:hover{color:var(--danger);border-color:currentColor}
.blk-item .chip.rmv:hover .cx{display:grid}
@media (hover:none){
  .sb-x,.fig-x,.vbox .x,.vbox .mv{opacity:.85}
  .blk-item.sel .chip.rmv{padding-right:24px}
  .blk-item.sel .chip.rmv .cx{display:grid}
}
.sbox.long:not(.open) .q{max-height:9.6em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}
.sbox.long .sq-foot{margin-top:6px}
.sb-del:hover{color:var(--danger)!important;border-color:var(--danger)!important}
/* ─── Fokus-Modus: nur schreiben ─────────────────────────────────────── */
html.zen .app{grid-template-columns:1fr!important}
html.zen .sidebar,html.zen .topbar,html.zen #banner,html.zen .tabbar,
html.zen .ed-outline,html.zen .ed-panel,html.zen .ed-timeline,html.zen .ed-status,
html.zen .blk-end,html.zen .ed-head .meta,html.zen .ed-head .row.between,html.zen .ed-head .rules,
html.zen .blk-tools,html.zen .blk .grip,html.zen .blk-chips .add,html.zen .blk-sec .btn,html.zen .blk-kw{display:none!important}
html.zen.in-editor .main{height:100vh!important;height:100dvh!important}
html.zen .ed-wrap{display:flex!important;height:100%}
html.zen .ed-center{flex:1;min-width:0;height:100%}
html.zen .ed-center{background:var(--paper)}
html.zen .ed-toolbar{position:absolute;left:0;right:0;top:0;z-index:15;transform:translateY(-105%);opacity:0;transition:transform .22s var(--ease),opacity .22s;box-shadow:0 10px 30px -18px rgba(0,0,0,.35)}
html.zen.zen-peek .ed-toolbar,html.zen .ed-toolbar:hover,html.zen .ed-toolbar:focus-within{transform:none;opacity:1}
html.zen .ed-scroll{padding:56px 24px 160px}
html.zen .ed-doc{max-width:min(var(--paper-w),780px)}
html.zen .ed-head{box-shadow:none;border-color:transparent;background:transparent}
html.zen .blk-item{background:transparent;border-color:transparent;box-shadow:none}
html.zen .blk-item.sel{background:var(--surface);border-color:var(--border);box-shadow:0 1px 2px rgba(0,0,0,.03)}
html.zen .blk-sec{background:transparent;color:var(--text-2);box-shadow:none;border-bottom:1px solid var(--border);border-radius:0}
html.zen .blk-sec .sec-time{opacity:.6}
html.zen.zen-dim .blk{transition:opacity .25s}
html.zen.zen-dim .blk:not(.sel):not(:focus-within){opacity:.32}
html.zen.zen-dim .blk:not(.sel):hover{opacity:.7}
.zen-pill{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));z-index:60;display:flex;align-items:center;gap:2px;padding:4px;border-radius:30px;background:var(--elev);border:1px solid var(--border);box-shadow:0 10px 30px -14px rgba(0,0,0,.35);opacity:.55;transition:opacity .2s}
.zen-pill:hover,.zen-pill:focus-within{opacity:1}
.zen-pill .zen-stat{font-size:.74rem;color:var(--text-3);padding:0 8px 0 10px;white-space:nowrap}
.zen-pill button{display:inline-flex;align-items:center;gap:5px;border:0;background:none;color:var(--text-2);padding:6px 9px;border-radius:20px;cursor:pointer;font:600 .76rem var(--font-ui)}
.zen-pill button svg{width:15px;height:15px}
.zen-pill button:hover,.zen-pill button.on{background:var(--surface-3);color:var(--text)}
.zen-pill .zen-off{background:var(--accent-soft);color:var(--accent)}
@media (max-width:640px){.zen-pill button span,.zen-pill .zen-stat{display:none}}
@media (hover:none){.zen-pill{opacity:.9}}
html.zen .blk-sec,html.zen .blk-sec .sec-title{color:var(--text)}
html.zen .blk-sec .sec-title{font-size:.86rem;letter-spacing:.08em}
html.zen .blk-sec input{color:var(--text-2);background:transparent;border-color:var(--border)}
html.zen .blk-sec .sec-col{color:var(--text-3)}
/* Seitenumbruch: im Text (hr.pb) und vor einem Punkt/Abschnitt (.pb-bar) – wirkt in PDF, Word und Seitenansicht */
hr.pb{border:0;border-top:2px dashed var(--accent);height:0;margin:1.35em 0 1.05em;overflow:visible;position:relative;opacity:.9;cursor:pointer}
hr.pb::after{content:'Seitenumbruch';position:absolute;left:50%;top:-.8em;transform:translateX(-50%);background:var(--paper);padding:0 .7em;font:700 .62rem/1.6 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);white-space:nowrap}
.blk.pb{margin-top:40px!important}
.blk > .pb-bar{position:absolute;left:0;right:0;top:-31px;height:22px;display:flex;align-items:center;gap:8px;color:var(--accent);font:700 .62rem/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase;user-select:none}
.pb-bar::before,.pb-bar::after{content:'';flex:1;border-top:2px dashed var(--accent);opacity:.75}
.pb-bar span{display:inline-flex;align-items:center;gap:5px}
.pb-bar .ico{width:14px;height:14px}
.pb-x{border:0;background:var(--surface-3);color:var(--text-2);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;cursor:pointer;padding:0;flex:none}
.pb-x:hover{background:var(--accent);color:var(--accent-ink)}
.pb-x .ico{width:12px;height:12px}
.prompter hr.pb,.pt-text hr.pb,.pt-card hr.pb,.off-ms hr.pb,.off-read hr.pb{display:none}
html.zen .blk > .pb-bar{opacity:.6}
/* Fragen: Überschrift immer rot – im Editor, Vortragsmodus, Seitenansicht und bei den Bausteinen */
.blk-item.k-frage .blk-dispo{color:var(--tc-red,#c43a3a)}
.pt-card .c-dispo.q,.pt-text .c-dispo.q,.pt-card .c-text p.q,.pt-text p.q,.pt-kw .kw-row.q > span:not(.kw-t){color:var(--tc-red,#c43a3a);opacity:1}
.lcard h4.q{color:var(--tc-red,#c43a3a)}

/* ─── Übersicht ──────────────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;border-radius:var(--r-xl);padding:30px 32px;margin-bottom:var(--gap);color:#fff;background:radial-gradient(120% 140% at 0% 0%,#2a3a52 0%,var(--navy) 45%,#0f141c 100%);box-shadow:var(--shadow-lg)}
.hero::before{content:"";position:absolute;right:-30px;top:-40px;width:380px;height:380px;background:var(--hero-img) center/cover;border-radius:50%;opacity:.5;mask-image:radial-gradient(closest-side,#000 55%,transparent);-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent)}
.hero::after{content:"";position:absolute;left:-10%;bottom:-60%;width:70%;height:120%;background:radial-gradient(closest-side,rgba(var(--accent-rgb),.28),transparent);pointer-events:none}
[data-effects="1"] .hero::before{animation:float 9s ease-in-out infinite alternate}
@keyframes float{from{transform:translateY(0) rotate(0)}to{transform:translateY(12px) rotate(3deg)}}
.hero>*{position:relative;z-index:1}
.hero .hi{font-family:var(--font-display);font-size:2.05rem;font-weight:600;line-height:1.15;max-width:640px}
.hero .date{opacity:.8;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.hero .verse{margin-top:14px;max-width:640px;font-family:var(--font-display);font-size:1.04rem;line-height:1.55;opacity:.95}
.hero .verse small{display:block;margin-top:6px;opacity:.75;font-family:var(--font-ui);font-size:.8rem;letter-spacing:.03em}
.hero .actions{margin-top:20px;display:flex;gap:8px;flex-wrap:wrap}
.hero .btn{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(6px)}
.hero .btn:hover{background:rgba(255,255,255,.22)}
.hero .btn.white{background:linear-gradient(135deg,#e0a07f,#b8704f);color:#fff;border-color:transparent;box-shadow:0 10px 24px -10px rgba(184,112,79,.9)}
.next-card{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.countdown{text-align:center;padding:10px 16px;border-radius:var(--r);background:var(--accent-soft);color:var(--accent);min-width:92px}
.countdown b{display:block;font-size:1.9rem;line-height:1;font-family:var(--font-display)}
.countdown span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:650}
.week-part{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:8px 6px;border-bottom:1px solid var(--border)}
.week-part:last-child{border-bottom:0}
.week-part .m{font-size:.76rem;font-weight:700;color:var(--text-3);text-align:right;font-variant-numeric:tabular-nums}
.week-sec{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:10px 6px 4px;color:var(--accent)}
/* Vortragsliste */
.sp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--gap)}
.sp-card{display:flex;flex-direction:column;gap:10px;min-height:170px}
.sp-card .num{font-family:var(--font-display);font-size:1.9rem;font-weight:600;color:var(--accent);line-height:1}
.sp-card .ttl{font-family:var(--font-display);font-size:1.16rem;font-weight:600;line-height:1.25}
.sp-card .foot{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-2);border-top:1px solid var(--border);padding-top:9px;margin-top:auto;flex-wrap:wrap}
.ring{--p:0;width:44px;height:44px;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--p)*1%),var(--surface-3) 0);display:grid;place-items:center;flex:none}
.ring::before{content:"";width:34px;height:34px;border-radius:50%;background:var(--surface);grid-area:1/1}
.ring b{grid-area:1/1;font-size:.7rem;z-index:1}
.kind-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.kind-pick button{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);cursor:pointer;text-align:left;transition:border-color var(--dur),background var(--dur)}
.kind-pick button:hover,.kind-pick button.on{border-color:var(--accent);background:var(--accent-soft)}
.kind-pick button b{display:block;font-size:.9rem}
.kind-pick button span{display:block;font-size:.76rem;color:var(--text-3)}
/* Bausteine */
.lib{display:grid;grid-template-columns:250px 1fr;gap:22px;align-items:start}
.lib-side{position:sticky;top:calc(var(--top-h) + 18px);max-height:calc(100vh - var(--top-h) - 36px);overflow:auto;padding-right:4px}
.facet{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--r-sm);cursor:pointer;color:var(--text-2);font-size:.9rem}
.facet:hover{background:var(--surface-3);color:var(--text)}
.facet.on{background:var(--accent-soft);color:var(--accent);font-weight:620}
.facet .badge{margin-left:auto;background:transparent;color:var(--text-3)}
.lib-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--gap)}
.lib-results.list-view{grid-template-columns:1fr}
.lib-filter{display:none}
@media (max-width:720px){.lib-bs{gap:4px}.lib-bs .lib-side .facets{display:none}.lib-bs .lib-filter{display:inline-flex}}
.lcard{display:flex;flex-direction:column;gap:10px;animation:viewin .35s var(--ease) both}
.lcard h4{font-size:1rem;font-weight:650;line-height:1.3}
.lcard .body{font-family:var(--font-editor);font-size:.97rem;line-height:1.62;color:var(--text);white-space:pre-line}
.lcard .body.collapsed{max-height:9.8em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.lcard .foot{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:8px;border-top:1px solid var(--border)}
.lcard .foot .grow{display:flex;gap:6px;flex-wrap:wrap}
/* Bibel */
.bible-reader{font-family:var(--font-editor);font-size:1.08rem;line-height:1.8;max-width:760px}
.bible-reader .v{cursor:pointer;border-radius:4px;padding:1px 0;transition:background .15s}
.bible-reader .v:hover{background:var(--accent-soft)}
.bible-reader .v.sel{background:var(--accent-soft-2)}
.bible-reader sup{font-family:var(--font-ui);font-size:.62em;font-weight:700;color:var(--accent);margin:0 .2em 0 .15em}
.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:5px}
.book-grid button{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:6px 8px;font-size:.82rem;text-align:left;cursor:pointer;display:flex;justify-content:space-between;gap:6px}
.book-grid button:hover{border-color:var(--accent)}
.book-grid button i{font-style:normal;color:var(--text-3);font-size:.72rem}
.book-grid button.off{opacity:.55}
.ch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:4px}
.ch-grid button{border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:6px 0;cursor:pointer;font-size:.84rem;font-variant-numeric:tabular-nums}
.ch-grid button.have{border-color:rgba(47,143,91,.4);background:rgba(47,143,91,.07)}
.ch-grid button:hover{border-color:var(--accent)}
.pool-item{display:flex;gap:12px;align-items:flex-start;padding:11px 14px;border-bottom:1px solid var(--border);cursor:pointer}
.pool-item:hover{background:var(--surface-2)}
.pool-item .ref{font-weight:650;min-width:150px;color:var(--accent)}
.pool-item .txt{font-family:var(--font-editor);color:var(--text-2);font-size:.94rem;line-height:1.55}
.bc-bar{height:8px;border-radius:6px;background:var(--surface-3);overflow:hidden;margin:6px 0 4px}
.bc-bar i{display:block;height:100%;width:0;background:var(--accent);border-radius:6px;transition:width .6s}
.bc-pill{position:fixed;left:16px;bottom:16px;z-index:60;display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:0 6px 20px rgba(0,0,0,.12);font-size:.8rem;cursor:pointer}
/* Recherche / Leser */
.research{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:20px;align-items:start}
.reader{font-family:var(--font-editor);font-size:1.03rem;line-height:1.72}
.reader h1{font-family:var(--font-display);font-size:1.6rem;margin-bottom:12px}
.reader h2,.reader h3{font-family:var(--font-ui);margin:1.4em 0 .5em}
.reader p{margin:0 0 .9em}
.reader p.qu{font-family:var(--font-ui);font-size:.9rem;font-weight:600;color:var(--text-2);background:var(--surface-2);padding:6px 10px;border-radius:8px}
.reader .pnum{display:inline-block;min-width:1.5em;font-family:var(--font-ui);font-size:.72em;font-weight:800;color:var(--accent);vertical-align:super}
.reader .cap{font-size:.85rem;color:var(--text-3);font-style:italic}
.reader .box{border:1px solid var(--border);border-radius:var(--r);padding:10px 14px;margin:0 0 1em;background:var(--surface-2)}
.reader p.hl{background:rgba(var(--accent-rgb),.1);border-radius:6px;box-shadow:-6px 0 0 rgba(var(--accent-rgb),.1)}
.res-item{padding:11px 12px;border-radius:var(--r);cursor:pointer;border:1px solid transparent}
.res-item:hover{background:var(--surface-2);border-color:var(--border)}
.res-item.on{background:var(--accent-soft);border-color:transparent}
.res-item b{display:block;margin-bottom:3px}
.res-item span{font-size:.83rem;color:var(--text-2)}
.jwr{display:flex;flex-direction:column;min-width:0}
.jwr-bar{display:flex;gap:6px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:2;border-radius:var(--r-lg) var(--r-lg) 0 0}
.jwr-act{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.jwr-act[hidden]{display:none}
.jwr-body{padding:18px 22px;overflow:auto;max-height:calc(100vh - 320px);min-height:40vh}
.jwr-modal .jwr-body{max-height:calc(100vh - 250px)}
.jwr-body a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.jwr-body blockquote{border-left:3px solid var(--accent);margin:0 0 1em;padding:4px 14px;color:var(--text-2)}
.jwr-body ul,.jwr-body ol{padding-left:1.4em;margin:0 0 1em}
/* Planer */
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal .d{aspect-ratio:1;border-radius:var(--r-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.84rem;background:var(--surface-2);position:relative;cursor:pointer}
.cal .d.h{color:var(--text-3);background:none;font-size:.7rem;text-transform:uppercase;aspect-ratio:auto;padding:4px;cursor:default}
.cal .d.o{opacity:.3}
.cal .d.today{outline:2px solid var(--accent)}
.cal .d.ev{background:var(--accent);color:#fff;font-weight:700}
.cal .d .dots{position:absolute;bottom:4px;display:flex;gap:2px}
.cal .d .dots i{width:5px;height:5px;border-radius:50%;background:currentColor}
.agenda-item{display:grid;grid-template-columns:66px 1fr auto;gap:14px;align-items:center;padding:13px;border-radius:var(--r);border:1px solid var(--border);background:var(--surface);margin-bottom:8px}
.agenda-date{text-align:center;border-right:1px solid var(--border);padding-right:12px}
.agenda-date b{display:block;font-size:1.55rem;font-family:var(--font-display);line-height:1}
.agenda-date span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:650}
/* Einstellungen */
.settings{display:grid;grid-template-columns:230px minmax(0,1fr);gap:26px;align-items:start}
.settings-nav{position:sticky;top:calc(var(--top-h) + 18px)}
.set-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}
.set-row:last-child{border-bottom:0}
.set-row .t{font-weight:600}
.set-row .d{font-size:.83rem;color:var(--text-3);margin-top:2px}
.set-row .c{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}
.swatches{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.swatch{width:30px;height:30px;border-radius:50%;cursor:pointer;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border-2);transition:transform var(--dur)}
.swatch:hover{transform:scale(1.1)}
.swatch.on{box-shadow:0 0 0 2px var(--text)}
.theme-prev{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.theme-prev button{border:2px solid var(--border);border-radius:var(--r);padding:0;overflow:hidden;cursor:pointer;background:none;text-align:left}
.theme-prev button.on{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2)}
.theme-prev .pv{height:60px;display:flex;gap:5px;padding:8px}
.theme-prev .pv i{display:block;border-radius:5px}
.theme-prev span{display:block;padding:6px 9px;font-size:.78rem;font-weight:600;color:var(--text-2);border-top:1px solid var(--border)}
.rule-row{display:grid;grid-template-columns:1.4fr 96px 1.5fr 1fr 40px 36px;gap:8px;align-items:start;margin-bottom:8px}
.user-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--border)}
.role-chip{font-size:.7rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:6px}
.role-superadmin{background:linear-gradient(135deg,#e0a07f,#b8704f);color:#fff}
.role-admin{background:var(--navy);color:#fff}
.role-user{background:var(--surface-3);color:var(--text-2)}
/* Anmeldung */
.lock{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;background:radial-gradient(120% 90% at 50% 0%,#233047 0%,#141a22 48%,#07090d 100%);color:#fff}
.lock canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lock .glow{position:absolute;width:70vmax;height:70vmax;border-radius:50%;background:radial-gradient(closest-side,rgba(184,112,79,.3),transparent 70%);filter:blur(10px);animation:breathe 8s ease-in-out infinite alternate}
@keyframes breathe{from{transform:scale(.9);opacity:.7}to{transform:scale(1.08);opacity:1}}
.lock-card{position:relative;width:100%;max-width:410px;text-align:center;padding:34px 32px 28px;border-radius:28px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);box-shadow:0 40px 90px -30px rgba(0,0,0,.85);animation:lockin .8s var(--ease)}
@keyframes lockin{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
.lock-logo{width:128px;height:128px;border-radius:32px;margin:0 auto 18px;display:block;box-shadow:0 20px 60px -12px rgba(184,112,79,.65),0 0 0 1px rgba(255,255,255,.08);animation:logofloat 6s ease-in-out infinite alternate;will-change:transform;backface-visibility:hidden}
@keyframes logofloat{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-6px,0)}}
.lock h1{font-family:var(--font-display);font-size:2.3rem;font-weight:500;letter-spacing:.04em;margin:0}
.lock .tag{color:rgba(255,255,255,.62);margin:6px 0 22px;font-family:var(--font-display);font-style:italic;font-size:1.02rem}
.lock .fld{position:relative;margin-bottom:10px}
.lock input[type=password],.lock input[type=text],.lock input[type=email]{width:100%;padding:14px 48px 14px 18px;border-radius:15px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.28);color:#fff;font-size:1.05rem;outline:none;transition:border-color .2s,box-shadow .2s;text-align:center}
.lock input.pw{letter-spacing:.2em;font-size:1.15rem}
.lock input::placeholder{color:rgba(255,255,255,.4);letter-spacing:normal}
.lock input:focus{border-color:rgba(224,160,127,.85);box-shadow:0 0 0 5px rgba(184,112,79,.25)}
.lock .eye{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:0;color:rgba(255,255,255,.55);cursor:pointer;padding:6px}
.lock .go{margin-top:6px;width:100%;padding:14px;border-radius:15px;border:0;background:linear-gradient(135deg,#d59070,#9d5a3c);color:#fff;font-weight:650;font-size:1.02rem;cursor:pointer;box-shadow:0 14px 30px -12px rgba(184,112,79,.9);transition:transform .15s,filter .2s}
.lock .go:hover{filter:brightness(1.08)}.lock .go:active{transform:scale(.98)}
.lock .rem{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;color:rgba(255,255,255,.7);font-size:.88rem}
.lock .rem .track{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2)}
.lock .err{color:#ffab98;min-height:1.4em;margin-top:10px;font-size:.9rem}
.lock .foot{margin-top:16px;color:rgba(255,255,255,.35);font-size:.74rem;letter-spacing:.05em}
.shake{animation:shake .45s}
@keyframes shake{10%,90%{transform:translateX(-2px)}20%,80%{transform:translateX(4px)}30%,50%,70%{transform:translateX(-7px)}40%,60%{transform:translateX(7px)}}
.lock.out{animation:lockout .6s var(--ease) forwards}
@keyframes lockout{to{opacity:0;transform:scale(1.04);visibility:hidden}}
.boot{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);z-index:250}
.boot img{width:84px;height:84px;border-radius:24px;animation:breathe 1.6s ease-in-out infinite alternate}
.privacy-blur .app{filter:blur(14px)}
/* Lieder & Player */
.song-row{display:flex;align-items:center;gap:10px;padding:8px 4px;border-bottom:1px solid var(--border)}
.song-nr{min-width:34px;text-align:right;color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}
/* Coach */
.score{display:flex;align-items:center;gap:14px;padding:12px;border-radius:var(--r);background:linear-gradient(135deg,var(--accent-soft),transparent);margin-bottom:10px}
.score .ring{width:58px;height:58px}
.score .ring::before{width:46px;height:46px}
.score .ring b{font-size:.95rem}
.meter{display:grid;grid-template-columns:110px 1fr 44px;gap:8px;align-items:center;font-size:.8rem;margin:5px 0}
.ai-var{border:1px solid var(--border);border-radius:var(--r);padding:12px 14px;margin-bottom:10px;background:var(--surface)}
.ai-var .insp p{margin:.3em 0}
.ai-out{white-space:pre-wrap;font-family:var(--font-editor);line-height:1.6}
.tl-mini{display:flex;height:8px;border-radius:5px;overflow:hidden;gap:2px;margin-top:6px}
.tl-mini i{display:block;height:100%}
/* Tagestext-Leser */
.hero .daily .daily-t{cursor:pointer;border-radius:6px;transition:background .15s}
.hero .daily .daily-t:hover{background:rgba(255,255,255,.08)}
.hero .daily .daily-t em{font-style:italic}
.dt-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.dt-date{position:relative;display:inline-flex;align-items:center;cursor:pointer;padding:4px 10px;border-radius:8px;font-family:var(--font-ui)}
.dt-date:hover{background:var(--surface-2)}
.dt-date input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.dt-art{font-family:var(--font-editor);line-height:1.75;max-width:68ch;margin:0 auto;color:var(--text)}
.dt-theme{margin:0 0 1.1em;padding:.7em 1em .75em 1.1em;border-left:4px solid var(--accent);background:var(--surface-2);border-radius:0 12px 12px 0;font-size:1.18em;line-height:1.55}
.dt-theme em{font-style:italic}
.dt-body p{margin:0 0 .9em;text-align:left;hyphens:auto}
.dt-body p:first-child::first-letter{font-size:2.6em;float:left;line-height:.9;margin:.06em .1em 0 0;color:var(--accent);font-weight:700}
.dt-body em{font-style:italic}
.dt-body a.dt-src{color:var(--accent);text-decoration:underline dotted;font-family:var(--font-ui);font-size:.82em}
.dt-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:10px;margin-top:6px;font-family:var(--font-ui);font-size:.8rem}
.dt-cite{display:inline-flex;gap:5px;align-items:center;color:var(--text-2);font-weight:600}
@media (max-width:640px){.dt-theme{font-size:1.08em}.dt-body p:first-child::first-letter{font-size:2.1em}}
.week-sec{display:flex;gap:6px;align-items:center;font-size:.72rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);margin:10px 0 2px}
.week-x{display:flex;gap:8px;align-items:center;margin-top:2px}
.week-x .ico{width:13px;height:13px;vertical-align:-2px}
/* Bibel: Knöpfe im Seitenfeld linksbündig */
.bsel .btn{justify-content:flex-start;text-align:left}
/* Bibel → Themen & Lieblingstexte: Liste links und Texte rechts scrollen für sich, passend zur Bildschirmhöhe */
.bpool{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;height:var(--bp-h,calc(100vh - 260px))}
.bpool > .card{min-height:0;overflow:auto;overscroll-behavior:contain}
@media (max-width:720px){.bpool{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,34%) minmax(0,1fr);gap:10px}}

/* ─── Vortragsmodus, Üben, Präsentation, PDF-Vorschau ────────────────── */
.fullmode{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;animation:fadein .25s ease}
.prompter{background:#0c0f14;color:#eef1f5}
.prompter.light{background:#fbf8f3;color:#18202b}
.pt-top{display:flex;align-items:center;gap:12px;padding:10px 18px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.07)}
.prompter.light .pt-top{background:rgba(0,0,0,.03);border-color:rgba(0,0,0,.08)}
.pt-clock{font-family:var(--font-mono);font-size:1.5rem;font-weight:700;min-width:118px;font-variant-numeric:tabular-nums}
.pt-clock.over{color:#ff7a6a}
.pt-sec{flex:1;min-width:0}
.pt-sec .n{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;opacity:.6;font-weight:700}
.pt-sec .s{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pt-secclock{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.pt-secclock b{display:block;font-size:1.15rem}
.pt-secclock span{font-size:.72rem;opacity:.65}
.pt-state{padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:700}
.pt-state.ok{background:rgba(47,143,91,.25);color:#7fd3a2}
.pt-state.late{background:rgba(199,129,28,.25);color:#f3c46a}
.pt-state.over{background:rgba(196,58,58,.3);color:#ff9a8a}
.pt-prog{height:4px;background:rgba(255,255,255,.08);position:relative}
.pt-prog i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#b8704f,#e0a07f);transition:width .3s}
.pt-prog em{position:absolute;top:-3px;width:2px;height:10px;background:rgba(255,255,255,.45)}
.pt-scroll{flex:1;overflow:auto;padding:18vh 7vw 60vh;scroll-behavior:auto}
.pt-text{max-width:1150px;margin:0 auto;font-family:var(--font-editor);line-height:1.5}
.pt-text .p-sec{font-family:var(--font-ui);font-size:.46em;letter-spacing:.14em;text-transform:uppercase;color:#e0a07f;margin:1.6em 0 .6em;display:flex;gap:12px;align-items:center}
.pt-text .p-sec::after{content:"";flex:1;height:1px;background:rgba(224,160,127,.3)}
.pt-text .p-dispo{font-family:var(--font-ui);font-size:.52em;font-weight:700;opacity:.55;margin:.9em 0 .2em}
.pt-text .p-item{margin:0 0 .6em;padding:.1em .3em;border-radius:10px;transition:background .3s}
.pt-text .p-item.cur{background:rgba(224,160,127,.08)}
.pt-text p{margin:0 0 .5em}
.pt-text .vbox{border-left-width:5px;background:rgba(224,160,127,.1);font-size:.92em}
.prompter.light .pt-text .vbox{background:rgba(184,112,79,.08)}
.prompter.mirror .pt-text{transform:scaleX(-1)}
.pt-guide{position:fixed;left:0;right:0;top:30vh;height:0;border-top:2px dashed rgba(224,160,127,.3);pointer-events:none}
.pt-bar{display:flex;gap:8px;align-items:center;padding:10px 16px;background:rgba(0,0,0,.55);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.08);flex-wrap:wrap}
.prompter.light .pt-bar{background:rgba(255,255,255,.85);border-color:rgba(0,0,0,.08)}
.pt-bar .btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:inherit}
.prompter.light .pt-bar .btn{background:#fff;border-color:rgba(0,0,0,.14)}
.pt-bar .btn.on{background:#b8704f;border-color:#b8704f;color:#fff}
/* Karten-Modus */
.pt-cards{flex:1;display:flex;flex-direction:column;overflow:hidden}
.pt-card{flex:1;overflow:auto;padding:4vh 7vw 3vh;display:flex;flex-direction:column}
.pt-card .c-dispo{font-family:var(--font-ui);font-weight:700;opacity:.62;font-size:.55em;margin-bottom:.5em;line-height:1.3}
.pt-card .c-kind{font-family:var(--font-ui);font-size:.36em;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e0a07f;margin-bottom:.4em}
.pt-card .c-text{font-family:var(--font-editor);line-height:1.45;max-width:1150px}
.pt-card .c-text p{margin:0 0 .45em}
.pt-card .c-img{display:flex;gap:12px;flex-wrap:wrap;margin-top:.5em}
.pt-card .c-img img{max-height:22vh;border-radius:12px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.pt-next{padding:10px 7vw;border-top:1px solid rgba(255,255,255,.08);font-size:.95rem;opacity:.6;display:flex;gap:10px;align-items:center}
.prompter.light .pt-next{border-color:rgba(0,0,0,.08)}
.pt-dots{display:flex;gap:4px;flex-wrap:wrap;padding:6px 16px}
.pt-dots i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.18);cursor:pointer}
.prompter.light .pt-dots i{background:rgba(0,0,0,.15)}
.pt-dots i.done{background:rgba(224,160,127,.5)}
.pt-dots i.cur{background:#e0a07f;transform:scale(1.4)}
.pt-dots i.sec{border-radius:2px;width:3px;height:10px;background:rgba(255,255,255,.4)}
.pt-flash{position:fixed;inset:0;pointer-events:none;background:rgba(196,58,58,.2);animation:fadeout 1.2s forwards;z-index:3}
@keyframes fadeout{to{opacity:0}}
/* Präsentationsfenster (Bilder für Zuhörer) */
.present-win{background:#000;color:#fff;display:flex;align-items:center;justify-content:center}
.pdfv{position:fixed;inset:0;z-index:220;display:flex;background:rgba(15,18,24,.6);backdrop-filter:blur(6px);animation:fadein .2s}
.pdfv-side{width:340px;max-width:90vw;background:var(--surface);padding:18px;overflow:auto;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:6px}
.pdfv-side .lbl{margin-top:6px}
.pdfv-side .seg{display:flex;flex-wrap:wrap}
.pdfv-side .seg button{flex:1}
.pdfv-main{flex:1;overflow:auto;background:#4f5459}
.pdfv-pages{display:flex;flex-direction:column;align-items:center;gap:22px;padding:28px 24px 60px;min-height:100%}
.pdfv-pages .empty{color:#eee}
.pdfv-page{position:relative;box-shadow:0 8px 30px rgba(0,0,0,.35);background:#fff;line-height:0}
.pdfv-num{position:absolute;bottom:-18px;left:0;right:0;text-align:center;font:600 .7rem var(--font-ui);color:#ddd;line-height:1}
.layout-pick{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.layout-pick button{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:8px;text-align:left;cursor:pointer;font-size:.8rem}
.layout-pick button b{display:block;font-size:.84rem}
.layout-pick button.on{border-color:var(--accent);background:var(--accent-soft)}
@media (max-width:760px){.pdfv{flex-direction:column}.pdfv-side{width:auto;max-width:none;max-height:46vh;border-right:0;border-bottom:1px solid var(--border)}}

/* ─── Responsiv ──────────────────────────────────────────────────────── */
@media (max-width:1300px){
  .ed-wrap{grid-template-columns:0 minmax(0,1fr) 380px}
  .ed-outline{display:none}
  [data-panel="closed"] .ed-wrap{grid-template-columns:0 minmax(0,1fr) 0}
}
@media (max-width:1024px){
  .app{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;transform:translateX(-102%);transition:transform .3s var(--ease);box-shadow:var(--shadow-lg);background:var(--surface)}
  .sidebar.open{transform:none}
  [data-sidebar="collapsed"] .app{grid-template-columns:1fr}
  .btn.menu-btn{display:inline-flex}
  .topbar{padding:0 12px}
  .view{padding:18px 14px 96px}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--glass);backdrop-filter:saturate(1.4) blur(18px);-webkit-backdrop-filter:saturate(1.4) blur(18px);border-top:1px solid var(--border);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .tabbar button{flex:1;border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.66rem;color:var(--text-3);padding:5px 0;cursor:pointer;font-weight:600}
  .tabbar button.on{color:var(--accent)}
  .tabbar .ico{width:23px;height:23px}
  .ed-wrap{grid-template-columns:minmax(0,1fr)!important;height:calc(100vh - var(--top-h) - 64px)}
  .ed-panel{position:fixed;right:0;top:var(--top-h);bottom:0;width:min(430px,100vw);z-index:45;transform:translateX(102%);transition:transform .3s var(--ease);box-shadow:var(--shadow-lg)}
  [data-panel="open"] .ed-panel{transform:none}
  .ed-scroll{padding:14px 10px 110px}
  .lib{grid-template-columns:1fr}
  .lib-side{position:static;max-height:none}
  .research,.settings{grid-template-columns:1fr}
  .settings-nav{position:static}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .toasts{bottom:84px;right:12px;left:12px;align-items:stretch}
}
@media (max-width:720px){
  .hide-sm{display:none!important}
  .topbar .actions .btn span{display:none}
  html{font-size:calc(var(--fs) * .97)}
  .g2,.g3{grid-template-columns:1fr}
  .span2,.span3{grid-column:auto}
  .page-head h2{font-size:1.55rem}
  .hero{padding:24px 20px}.hero .hi{font-size:1.6rem}
  .hero::before{width:220px;height:220px;right:-60px;top:-50px}
  .next-card{grid-template-columns:1fr}
  .set-row{grid-template-columns:1fr}
  .set-row .c{justify-content:flex-start}
  .set-main .row{flex-wrap:wrap}   /* Knopfreihen in den Einstellungen nie über den Rand schieben */
  .swatches{justify-content:flex-start}
  .theme-prev{grid-template-columns:repeat(3,1fr)}
  .lib-results{grid-template-columns:1fr}
  .rule-row{grid-template-columns:1fr}
  .modal{max-height:92vh}
  .overlay{padding:3vh 8px 8px}
  .agenda-item{grid-template-columns:56px 1fr}
  .agenda-item>:last-child{grid-column:1/-1}
  .blk{margin-left:calc(var(--lvl,0) * 12px)}
  .blk-item{padding-left:28px}
  .ed-head{padding:16px 16px 14px}
  .ed-head .ttl{font-size:1.35rem}
  .manu{padding:22px 18px 40px}
  .pt-top{flex-wrap:wrap}
}
@media print{
  .sidebar,.topbar,.tabbar,.ed-toolbar,.ed-panel,.ed-outline,.ed-status,.toasts{display:none!important}
  body{background:#fff;color:#000}
}

/* ─── Tempo: Farben, Soll-Position, Countdown, Antwortzeit ───────────── */
.pt-clock{background:none;border:0;color:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;line-height:1;padding:2px 6px;border-radius:10px;transition:color .3s,background .3s}
.pt-clock:hover{background:rgba(255,255,255,.06)}
.pt-clock .pt-cm{font-family:var(--font-ui);font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.55;margin-top:3px}
.prompter[data-pace="ok"] .pt-cl{color:#7fd3a2}
.prompter[data-pace="fast"] .pt-cl{color:#7cb8ff}
.prompter[data-pace="slow"] .pt-cl{color:#f3c46a}
.prompter[data-pace="over"] .pt-cl{color:#ff7a6a}
.prompter.light[data-pace="ok"] .pt-cl{color:#2f8f5b}.prompter.light[data-pace="fast"] .pt-cl{color:#2f6fc4}.prompter.light[data-pace="slow"] .pt-cl{color:#b8650f}.prompter.light[data-pace="over"] .pt-cl{color:#c43a3a}
.pt-top{border-bottom:3px solid transparent;transition:border-color .4s}
.prompter[data-pace="ok"] .pt-top{border-bottom-color:rgba(47,143,91,.55)}
.prompter[data-pace="fast"] .pt-top{border-bottom-color:rgba(58,111,196,.7)}
.prompter[data-pace="slow"] .pt-top{border-bottom-color:rgba(199,129,28,.75)}
.prompter[data-pace="over"] .pt-top{border-bottom-color:rgba(196,58,58,.85)}
.pt-pace{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:0}
.pt-soll{font-size:.72rem;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34vw}
.pt-state.idle{background:rgba(255,255,255,.08);color:inherit;opacity:.7}
.pt-state.fast{background:rgba(58,111,196,.28);color:#9cc6ff}
.prompter.light .pt-state.fast{color:#2f5fb0}.prompter.light .pt-state.ok{color:#2f7d4f}.prompter.light .pt-state.late,.prompter.light .pt-state.slow{color:#9a5a0a}.prompter.light .pt-state.over{color:#b02f2f}
.pt-state.slow{background:rgba(199,129,28,.25);color:#f3c46a}
.pt-prog{height:6px}
.pt-prog .pt-pos{position:absolute;top:-4px;width:4px;height:14px;margin-left:-2px;border-radius:2px;background:#fff;box-shadow:0 0 0 2px rgba(0,0,0,.35);transition:left .4s}
.prompter.light .pt-prog .pt-pos{background:#18202b;box-shadow:0 0 0 2px rgba(255,255,255,.8)}
.prompter[data-pace="fast"] .pt-prog i{background:linear-gradient(90deg,#3a6fc4,#7cb8ff)}
.prompter[data-pace="slow"] .pt-prog i{background:linear-gradient(90deg,#c7811c,#f3c46a)}
.prompter[data-pace="over"] .pt-prog i{background:#c43a3a}
.pt-dots i.soll{box-shadow:0 0 0 2px #7cb8ff;transform:scale(1.25)}
.prompter[data-pace="slow"] .pt-dots i.soll{box-shadow:0 0 0 2px #f3c46a}
.pt-text .p-item.soll{position:relative;box-shadow:inset 5px 0 0 #3a6fc4}
.pt-text .p-item.soll::after{content:'Hier solltest du sein';position:absolute;right:.4em;top:.3em;font:700 .3em var(--font-ui);letter-spacing:.06em;text-transform:uppercase;padding:.3em .6em;border-radius:6px;background:#3a6fc4;color:#fff}
.prompter[data-pace="slow"] .pt-text .p-item.soll{box-shadow:inset 5px 0 0 #c7811c}
.prompter[data-pace="slow"] .pt-text .p-item.soll::after{background:#c7811c}
.pt-text .p-item.soll.cur{box-shadow:none}.pt-text .p-item.soll.cur::after{display:none}
.pt-ans{display:inline-flex;align-items:center;gap:.4em;margin-top:.5em;padding:.35em .8em;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(58,111,196,.18);color:inherit;font:600 .45em var(--font-ui);cursor:pointer}
.pt-ans.run{background:rgba(47,143,91,.25)}
.pt-ans.warn{background:rgba(199,129,28,.3)}
.pt-ans.over{background:rgba(196,58,58,.35)}
.pt-ans b{font-family:var(--font-mono);font-size:1.25em}
@media (max-width:700px){.pt-soll{display:none}}
/* ─── Seitenansicht (iPad): Maße in pt über --u (px je pt) ────────────── */
.pgv{position:fixed;inset:0;z-index:300;--u:1.8333px;--pg-fs:25.6px;background:#fff;color:#1b1f24;--pg-muted:#8a8f98;--pg-acc:#b8704f;--pg-box:#faf5f1;--pg-mark:#6f2da8;--pg-clock:#1b1f24;--mark:#fff1a6;
  --tc-red:#e0301e;--tc-orange:#c96a0e;--tc-green:#2f7d4f;--tc-blue:#2f5fb0;--tc-purple:#6f2da8;--tc-gray:#6b7280;--tc-auto:#1b1f24;--hl-yellow:#fff1a6;--hl-green:#d6f0db;--hl-blue:#dbe7fa;--hl-pink:#f9d9e3;--hl-orange:#fde0bf;
  font-family:-apple-system,"Helvetica Neue",Helvetica,Arial,"Source Sans 3",sans-serif;-webkit-user-select:none;user-select:none;outline:none;touch-action:manipulation;overflow:hidden}
.pgv.serif{font-family:var(--font-editor),Georgia,serif}
.pgv.dark{background:#101317;color:#eef1f5;--pg-muted:#8d96a3;--pg-box:#1b2129;--pg-mark:#cdadff;--pg-clock:#eef1f5;--mark:#6b5a12;
  --tc-red:#ff8f85;--tc-orange:#ffbb73;--tc-green:#84dca0;--tc-blue:#94bbff;--tc-purple:#cdadff;--tc-gray:#a7b0bd;--tc-auto:#eef1f5;--hl-yellow:#6b5a12;--hl-green:rgba(90,200,120,.3);--hl-blue:rgba(110,160,255,.3);--hl-pink:rgba(255,120,160,.3);--hl-orange:rgba(255,160,80,.3)}
.pgv-page{position:absolute;inset:0;overflow:hidden}
.pgv-content{position:absolute;left:calc(14 * var(--u));right:calc(14 * var(--u));top:calc(14 * var(--u));bottom:calc(104 * var(--u));overflow:hidden;font-size:var(--pg-fs);line-height:1.36}
.pgv-measure{visibility:hidden;pointer-events:none;z-index:-1}
.pgv-content.pgv-in{animation:pgvin .16s ease-out}
@keyframes pgvin{from{opacity:.35}to{opacity:1}}
.pgv-page.pgv-edge{animation:pgvedge .3s}
@keyframes pgvedge{30%{transform:translateX(-6px)}60%{transform:translateX(4px)}}
.pgv-content p{margin:0 0 .62em}
.pgv-content ul,.pgv-content ol{margin:0 0 .45em;padding-left:1.7em}
.pgv-content ul li{list-style:"-  "}
.pgv-content li{margin:0 0 .3em}
.pgv-content li.pg-cont{list-style:none}
.pgv-content b,.pgv-content strong{font-weight:700}
.pgv-content mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 .08em}
.pgv-content .emph{text-decoration:underline;text-decoration-color:var(--pg-acc);text-underline-offset:.15em}
.pgv-content .pause{color:var(--pg-acc);font-weight:800}
.pgv-content .regie{color:#8a6a12;font-size:.6em;font-weight:700;background:rgba(199,160,30,.14);padding:.08em .4em;border-radius:5px;vertical-align:middle}
.pg-sec{font-size:.56em;letter-spacing:.14em;text-transform:uppercase;color:var(--pg-muted);font-weight:700;margin:.15em 0 .55em;padding-bottom:.25em;border-bottom:1px solid rgba(128,128,128,.25)}
.pg-dispo{font-weight:700;font-size:.8em;color:var(--pg-muted);margin:0 0 .3em}
.pg-hint{font-style:italic;color:#9a7a1a;font-size:.78em;margin:0 0 .55em}
.pgv.dark .pg-hint{color:#e2bf5a}
.pg-d{font-weight:600}
.pg-verse,.pg-quote{margin:.15em 0 .85em;padding:.42em .75em;border-left:4px solid var(--pg-acc);background:var(--pg-box);border-radius:0 8px 8px 0;box-shadow:0 5px 16px -10px rgba(0,0,0,.35)}
.pg-verse.pg-cont,.pg-quote.pg-cont{border-top-left-radius:0}
.pg-vr{color:var(--pg-acc)}
.pg-quote{border-left-color:#3a6fc4}
.pg-quote small{display:block;font-size:.62em;color:var(--pg-muted);margin-top:.2em}
.pg-img{margin:.2em 0 .7em}
.pg-img img{display:block;max-width:100%;max-height:calc((100vh - 118 * var(--u)) * .62);border-radius:6px}
.pg-img figcaption{font-size:.55em;color:var(--pg-muted);margin-top:.2em}
.pgv-foot{position:absolute;left:calc(14 * var(--u));right:calc(140 * var(--u));bottom:calc(6 * var(--u));display:flex;gap:calc(34 * var(--u));font-size:calc(9 * var(--u));color:var(--pg-muted);white-space:nowrap;overflow:hidden}
.pgv-foot span:first-child{overflow:hidden;text-overflow:ellipsis;min-width:0}
.pgv-mark{position:absolute;right:calc(4 * var(--u));width:calc(124 * var(--u));bottom:calc(82 * var(--u));border-bottom:calc(1.4 * var(--u)) solid var(--pg-mark);text-align:center;font-size:calc(15 * var(--u));line-height:1.3;color:var(--pg-mark);font-variant-numeric:tabular-nums}
.pgv-mark b{font-weight:700}
.pgv-clock{position:absolute;right:calc(4 * var(--u));width:calc(124 * var(--u));bottom:calc(10 * var(--u));height:calc(64 * var(--u));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;border:0;background:none;padding:0;color:var(--pg-clock);cursor:pointer;font:700 calc(30 * var(--u))/1 -apple-system,"Helvetica Neue",Arial,sans-serif;font-variant-numeric:tabular-nums;transition:color .3s}
.pgv-clock small{font-size:.32em;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--pg-muted);margin-top:.25em}
.pgv-clock small:empty{display:none}
.pgv[data-pace="ok"] .pgv-clock{color:#2f8f5b}.pgv[data-pace="fast"] .pgv-clock{color:#2f6fc4}.pgv[data-pace="slow"] .pgv-clock{color:#c7811c}.pgv[data-pace="over"] .pgv-clock{color:#c43a3a}
.pgv.dark[data-pace="ok"] .pgv-clock{color:#7fd3a2}.pgv.dark[data-pace="fast"] .pgv-clock{color:#7cb8ff}.pgv.dark[data-pace="slow"] .pgv-clock{color:#f3c46a}.pgv.dark[data-pace="over"] .pgv-clock{color:#ff7a6a}
.pgv.loading .pgv-page .pgv-content::before{content:"Seiten werden vorbereitet …";color:var(--pg-muted);font-size:.7em}
.pgv-ui{position:absolute;left:0;right:0;top:0;z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;padding:max(10px,env(safe-area-inset-top)) 10px 18px;background:none;-webkit-user-select:none;user-select:none}
.pgv-ui[hidden]{display:none}
.pgv-bar{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:2px;padding:5px;border-radius:14px;background:rgba(22,26,32,.94);color:#fff;box-shadow:0 12px 30px -12px rgba(0,0,0,.6);font:600 14px/1 var(--font-ui)}
.pgv-bar button{display:inline-flex;align-items:center;gap:6px;min-height:38px;min-width:38px;justify-content:center;padding:0 10px;border:0;border-radius:10px;background:none;color:#fff;cursor:pointer;font:inherit}
.pgv-bar button:hover{background:rgba(255,255,255,.1)}
.pgv-bar svg{width:18px;height:18px}
.pgv-bar .pgv-exit{background:rgba(255,255,255,.12)}
.pgv-sep{width:1px;height:22px;background:rgba(255,255,255,.2);margin:0 4px}
.pgv-no,.pgv-sz{min-width:52px;text-align:center;color:rgba(255,255,255,.8);font-variant-numeric:tabular-nums}
.pgv-slider{width:min(560px,86vw);accent-color:#e0a07f}
/* Seitenansicht: Text läuft links neben Uhr und Soll-Zeit bis kurz über die Fußzeile */
.pgv-content{bottom:calc(24 * var(--u))}
.pgv-content > .pg-fl1{float:right;width:0;height:calc(100% - 84 * var(--u))}
.pgv-content > .pg-fl2{float:right;clear:right;width:calc(122 * var(--u));height:calc(84 * var(--u))}
.pgv-content .pg-verse,.pgv-content .pg-quote,.pgv-content .pg-img,.pgv-content .pg-sec{display:flow-root}
/* Uhr lange drücken: 3 – 2 – 1 (die Fläche dahinter füllt sich), dann Ringe und die Ziffern rollen auf 0:00 herein */
.pgv-clock{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation;overflow:visible;isolation:isolate}
.pgv-clock > span,.pgv-clock > small{position:relative;transition:opacity .15s}
.pgv-clock::before{content:"";position:absolute;inset:calc(-3 * var(--u)) calc(-2 * var(--u));z-index:-1;border-radius:calc(14 * var(--u));background:var(--pg-acc);opacity:0;clip-path:inset(0 100% 0 0 round calc(14 * var(--u)));transition:clip-path .3s ease,opacity .3s ease}
.pgv-clock.holding::before{opacity:.2;clip-path:inset(0 0 0 0 round calc(14 * var(--u)));transition:clip-path var(--hold,1.5s) linear,opacity .15s}
.pgv-clock:focus,.pgv-clock:focus-visible{outline:none}
.pgv-clock.holding > span,.pgv-clock.holding > small{opacity:.12}
.pgv-hold{position:absolute;inset:0;display:grid;place-items:center;font-size:1.25em;font-weight:800;color:var(--pg-acc);pointer-events:none}
.pgv-hold.pop{animation:pgvpop .45s cubic-bezier(.2,1.3,.4,1)}
@keyframes pgvpop{0%{transform:scale(1.9);opacity:0}40%{opacity:1}100%{transform:scale(1);opacity:1}}
.pgv .pgv-clock.reset{color:var(--pg-acc)}
.pgv-clock.reset > span{animation:pgvroll .6s cubic-bezier(.2,1.35,.4,1)}
@keyframes pgvroll{0%{transform:translateY(-55%) scale(.85);opacity:0;filter:blur(3px)}100%{transform:none;opacity:1;filter:none}}
.pgv-ripple{position:absolute;left:50%;top:50%;width:calc(70 * var(--u));height:calc(70 * var(--u));margin:calc(-35 * var(--u)) 0 0 calc(-35 * var(--u));border-radius:50%;border:calc(2.2 * var(--u)) solid var(--pg-acc);pointer-events:none;opacity:0;animation:pgvripple .85s ease-out forwards}
@keyframes pgvripple{0%{transform:scale(.35);opacity:.85}100%{transform:scale(2.3);opacity:0}}
@media (prefers-reduced-motion:reduce){.pgv-hold.pop,.pgv-clock.reset > span,.pgv-ripple{animation:none}.pgv-ripple{display:none}.pgv-clock.holding::before{transition:opacity .15s}}

/* ─── Ergänzungen für Import, Editor, Claude, Vortragsmodus ───────────── */
.view.flush{padding:0;max-width:none}
.ok{color:var(--ok)}.bad{color:var(--danger)}
.click{cursor:pointer}
.chip.xs{font-size:.66rem;padding:1px 6px}
.search-trigger kbd{font:600 .68rem var(--font-ui);padding:2px 6px;border-radius:5px;background:var(--surface-3);color:var(--text-3)}
.toast.busy .spin{width:15px;height:15px;border-color:rgba(255,255,255,.3);border-top-color:#fff}
[data-theme="dark"] .toast.busy .spin,[data-theme="oled"] .toast.busy .spin{border-color:rgba(0,0,0,.15);border-top-color:var(--accent)}
.table tr.click:hover td{background:var(--accent-soft)}
.reader-modal{max-width:1040px!important}
.reader-modal .modal-b{padding:0}
.jwr-modal .jwr{max-height:none}
.jwr-modal .jwr-bar{border-radius:0}
.jwr [data-pi]{cursor:pointer;border-radius:6px;transition:background .15s}
.jwr [data-pi]:hover{background:var(--surface-2)}
.rs-right .jwr-body{max-height:calc(100vh - 290px)}

/* Import-Vorschau */
.imp-box{max-height:46vh;overflow:auto;border:1px solid var(--border);border-radius:var(--r);padding:10px 12px;background:var(--surface-2)}
.imp-sec{display:flex;gap:10px;align-items:center;margin:12px 0 6px;padding:6px 10px;border-radius:8px;background:var(--navy);color:#fff;font-size:.78rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}
.imp-sec:first-child{margin-top:0}
.imp-sec span{flex:1}.imp-sec i{font-style:normal;opacity:.7;font-weight:500;text-transform:none;letter-spacing:0}
.imp-item{margin:0 0 6px calc(var(--lvl) * 20px);padding:5px 10px;border-left:3px solid var(--kc);background:var(--surface);border-radius:0 8px 8px 0;font-size:.88rem;line-height:1.45}
.imp-item .kind-tag{margin-right:4px}
.imp-item .h{font-size:.78rem;color:var(--regie);font-style:italic;margin-top:2px}
.imp-item .c{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
/* Bibelstellen und Quellen in der Vorschau antippen: Bibeltext bzw. Quelle ansehen */
.imp-item .c .chip.bref,.imp-item .c .chip[data-psrc]{cursor:pointer;transition:filter .12s,box-shadow .12s}
.imp-item .c .chip.bref:hover,.imp-item .c .chip[data-psrc]:hover{filter:brightness(.95);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.18)}

/* Editor */
.ed-head .kind.click{cursor:pointer}
.ed-head .rules{margin-top:10px;font-size:.82rem;color:var(--text-2)}
.ed-head .rules summary{cursor:pointer;color:var(--text-3)}
.ed-head .rules div{padding:6px 0 0 18px;font-style:italic}
.blk.flash{animation:flash 1.2s var(--ease)}
.blk.drop-into{outline:2px dashed var(--accent);outline-offset:2px}
.blk-sec .sec-col{padding:2px;margin-left:-6px}
.blk-sec.collapsed{opacity:.88}
/* Abschnittskopf: Reicht die Breite nicht (schmales Fenster oder geöffneter Seitenbereich),
   rutscht die Überschrift in eine eigene Zeile über Zeit, Balken und Knöpfe – statt sich in
   eine schmale Spalte zu quetschen. Passt alles nebeneinander, bleibt es wie bisher. */
.blk-sec{flex-wrap:wrap}
/* Pfeil und Überschrift gehören zusammen und bleiben immer in einer Zeile */
.blk-sec .sec-head{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0}
.blk-sec .sec-title{flex:1 1 auto;min-width:0;overflow-wrap:break-word}
/* Zeit, Balken und Knöpfe bleiben ebenfalls eine Einheit: Sie rutschen zusammen nach
   unten, nie einzeln – und stehen dort weiterhin rechts. */
.blk-sec .sec-ctl{display:flex;align-items:center;gap:10px;flex:none;margin-left:auto}
.blk-kw{margin-top:6px;font-size:.76rem;color:var(--text-3);display:flex;gap:4px;align-items:center}
.vbox.ctx{border-left-style:dashed;opacity:.9}
.blk-hint{margin-top:3px}
.blk-hint:focus{display:block!important}
.ed-ro .blk-text:empty::before{content:""}
.p-target{padding:8px 10px;border-radius:9px;background:var(--surface-2);line-height:1.4}
.p-target .ico{vertical-align:-2px}
.manu .mi{cursor:pointer;border-radius:8px;padding:2px 6px;margin-left:-6px}
.manu .mi:hover{background:var(--surface-2)}
.manu .regie-line{color:var(--regie);font-family:var(--font-ui);font-size:.75em;font-style:italic;margin:0 0 .4em}
.kw-view .kw .input{font-family:var(--font-editor);font-size:1rem}
.ed-status .ok{color:var(--ok);font-weight:650}.ed-status .bad{color:var(--danger);font-weight:650}

/* Claude */
.ai-wait{text-align:center;padding:24px 10px 10px}
.ai-orb{width:74px;height:74px;margin:0 auto 16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f3c9ae,var(--accent) 55%,#6b3a24);box-shadow:0 0 40px rgba(var(--accent-rgb),.55);animation:breathe 1.4s ease-in-out infinite alternate}
.ai-steps{padding-left:20px;line-height:1.6}.ai-steps li{margin-bottom:14px}
.ai-var .ai-out[contenteditable="true"]{outline:none;border-radius:8px;padding:6px 8px;margin:-6px -8px;max-height:44vh;overflow:auto}
.ai-var .ai-out[contenteditable="true"]:focus{background:var(--surface-2)}

/* Neuer Vortrag */
.start-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6px}
.start-pick button{border:1px solid var(--border);background:var(--surface);border-radius:var(--r);padding:10px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.start-pick button .ico{color:var(--accent);margin-bottom:4px}
.start-pick button b{font-size:.9rem}.start-pick button span{font-size:.74rem;color:var(--text-3)}
.start-pick button.on{border-color:var(--accent);background:var(--accent-soft)}
.tpl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px;margin-top:10px}
.tpl-it{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border:1px solid var(--border);border-radius:10px;cursor:pointer}
.tpl-it:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.tpl-it b{display:block;font-size:.86rem}
.kind-pick .ico.lg{width:24px;height:24px;color:var(--accent);flex:none}
@media (max-width:720px){.start-pick{grid-template-columns:repeat(2,1fr)}}

/* Bilder */
.pic-big{background:#111;border-radius:12px;display:flex;align-items:center;justify-content:center;max-height:60vh;overflow:hidden}
.pic-big img{max-width:100%;max-height:60vh;object-fit:contain}
.present-win{cursor:none}
.present-win .pw-logo img{width:120px;opacity:.15;border-radius:28px}
.present-win .pw-img{max-width:100vw;max-height:100vh;object-fit:contain}
.present-win .pw-cap{position:fixed;left:0;right:0;bottom:3vh;text-align:center;font:600 1.4rem var(--font-ui);text-shadow:0 2px 12px #000}

/* Vortragsmodus */
.pt-open body{overflow:hidden}
.pt-main{flex:1;min-height:0}
.pt-card{font-size:1em}
.pt-card-in{max-width:1150px;margin:0 auto;width:100%}
.pt-card .c-hint,.pt-text .c-hint{font-family:var(--font-ui);font-size:.42em;font-weight:700;color:#e2bf5a;margin:0 0 .5em}
.pt-card .c-refs,.pt-text .c-refs{font-family:var(--font-ui);font-size:.42em;opacity:.6;margin-top:.5em}
.pt-card .vbox,.pt-text .vbox{margin:.4em 0 .6em;font-size:.8em;border-left:5px solid #e0a07f;background:rgba(224,160,127,.1);padding:.4em .7em;border-radius:0 12px 12px 0;line-height:1.45}
.pt-card .vbox .r,.pt-text .vbox .r{color:#e0a07f;font-family:var(--font-ui);font-size:.6em;margin-right:.4em}
.pt-card .vbox sup,.pt-text .vbox sup{color:#e0a07f;font-family:var(--font-ui);font-size:.5em}
.pt-card .sbox,.pt-text .sbox{margin:.4em 0;font-size:.75em;border-left:5px solid #6a9be0;background:rgba(58,111,196,.14);padding:.4em .7em;border-radius:0 12px 12px 0}
.prompter.light .vbox{background:rgba(184,112,79,.08)}
.pt-card .c-text .regie,.pt-text .regie{color:#e2bf5a;font-family:var(--font-ui);font-size:.5em;font-weight:700;background:rgba(226,191,90,.14);padding:.1em .4em;border-radius:6px}
.pt-card .c-text .emph,.pt-text .emph{text-decoration:underline;text-decoration-color:#e0a07f;text-underline-offset:.15em}
.pt-card .c-text .pause,.pt-text .pause{color:#e0a07f;font-weight:800}
.pt-card .c-text mark,.pt-text mark{background:rgba(255,220,120,.25);color:inherit}
.pt-kw .kw-row{display:flex;gap:.8em;align-items:baseline;padding:.25em .4em;border-radius:10px;cursor:pointer}
.pt-kw .kw-t{font-family:var(--font-mono);font-size:.5em;opacity:.55;min-width:3.2em}
.pt-kw .kw-ref{font-family:var(--font-ui);font-size:.5em;color:#e0a07f}
.pt-kw .kw-row.cur{background:rgba(224,160,127,.14)}
.pt-text .p-item{cursor:pointer}
.pt-flash.soft{background:rgba(199,129,28,.18)}
.btn.recording{background:#c43a3a!important;border-color:#c43a3a!important;color:#fff!important;animation:pulse 1.6s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(196,58,58,.25)}}
.prompter .seg{background:rgba(255,255,255,.08)}
.prompter .seg button{color:inherit;opacity:.75}
.prompter .seg button.on{background:rgba(255,255,255,.16);opacity:1;color:inherit}
.prompter.light .seg{background:rgba(0,0,0,.06)}
.prompter.light .seg button.on{background:#fff}
.prompter.mirror .pt-card-in,.prompter.mirror .pt-text{transform:scaleX(-1)}
@media (max-width:720px){.pt-bar .btn span{display:none}.pt-secclock{display:none}.pt-card{padding:3vh 5vw}}

/* Übersicht */
.dash .card{min-width:0}
.hero .daily a{color:inherit}
.week-part .btn{white-space:nowrap}

/* Recherche */
.rs-left .res{max-height:calc(100vh - 330px);overflow:auto}
.research .res-item .chip{display:inline-flex}

/* Einstellungen */
.set-main{min-width:0}
.settings-nav .nav-item.active::before{left:-8px}
.rule-row .input,.rule-row .select,.rule-row .textarea{font-size:.82rem}
/* Editor auf kleineren Bildschirmen: Spalten schmaler, Werkzeugleiste kompakter */
@media (max-width:1600px){
  .ed-wrap{grid-template-columns:230px minmax(0,1fr) 360px}
  [data-panel="closed"] .ed-wrap{grid-template-columns:230px minmax(0,1fr) 0}
  [data-outline="closed"] .ed-wrap{grid-template-columns:0 minmax(0,1fr) 360px}
  .ed-toolbar .tb span{display:none}
  .ed-toolbar .tb-ai span{display:inline}
}
@media (max-width:1300px){ .ed-wrap{grid-template-columns:0 minmax(0,1fr) 360px} }
.pt-text .c-kind{font-family:var(--font-ui);font-size:.36em;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.3em}
.pt-text .c-dispo{font-family:var(--font-ui);font-weight:700;opacity:.62;font-size:.5em;margin-bottom:.35em;line-height:1.3}
.pt-text .c-text p{margin:0 0 .45em}
.pt-text .c-img{display:flex;gap:12px;flex-wrap:wrap;margin-top:.4em}
.pt-text .c-img img{max-height:18vh;border-radius:12px;cursor:pointer}
/* Editor füllt die Höhe exakt aus – auch mit Hinweisbanner */
.in-editor .main{height:100vh;height:100dvh;overflow:hidden}
.in-editor .view.flush{flex:1;min-height:0;display:flex;flex-direction:column}
.in-editor .ed-wrap{height:auto;flex:1;min-height:0}
.blk-chips .sug{border:1px dashed rgba(var(--accent-rgb),.5);background:transparent;color:var(--accent)}
.hero .actions .btn{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:1024px){
  .in-editor .main{height:calc(100dvh - 64px - env(safe-area-inset-bottom))}
  .in-editor .ed-wrap{height:auto!important}
}
/* ─── Zeilen mit Überschrift und Knöpfen (Übersicht, Listen, Offline-Start) ───
   .li-b ist der Textblock einer solchen Zeile. Am PC bleibt alles nebeneinander
   wie bisher; auf dem Handy bekommt der Text die erste Zeile für sich und die
   Knöpfe rücken geschlossen darunter nach rechts – statt den Text auf wenige
   Zentimeter zusammenzudrücken. */
.li-b{flex:1 1 12rem;min-width:0}
.list-item{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}
@media (max-width:640px){
  .off-card{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}
  .list-item > .li-b,.off-card > .li-b,.off-card > div:first-child{flex:1 1 60%}
  .week-part{grid-template-columns:54px minmax(0,1fr);row-gap:6px}
  .week-part > .btn{grid-column:2;justify-self:end}
  .week-sec{flex-wrap:wrap}
}
@media (max-width:720px){
  .blk-sec{flex-wrap:wrap;padding:10px 12px 10px 30px;gap:6px}
  .blk-sec .sec-head{flex:1 1 100%}
  .blk-sec .sec-title{font-size:.8rem}
  .blk-sec .sec-ctl{flex:1 1 100%;margin-left:0;gap:6px}
  .blk-sec .sec-time{flex:1}
  .blk-sec .sec-bar{flex:1}
  .blk-tools{top:-18px;right:4px}
  .ed-head .ttl{font-size:1.25rem}
}
/* Fernbedienung */
.remote{max-width:560px;margin:0 auto}
.rm-info{text-align:center;padding:10px 0 18px}
.rm-kw{font-family:var(--font-display);font-size:1.5rem;line-height:1.3;margin:10px 0 6px;min-height:2.6em}
.rm-next{color:var(--text-3)}
.rm-clock{font-family:var(--font-mono);font-size:1.3rem;margin-top:10px}
.rm-btns{display:grid;grid-template-columns:1fr 2fr;gap:12px}
.rm-btns button{border:0;border-radius:24px;padding:36px 10px;font-size:1.3rem;font-weight:700;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;color:#fff;touch-action:manipulation;user-select:none}
.rm-btns button .ico{width:40px;height:40px}
.rm-prev{background:var(--navy-2)}
.rm-next-b{background:linear-gradient(135deg,#d59070,#9d5a3c);box-shadow:0 16px 30px -14px rgba(184,112,79,.9)}
.rm-btns button.flash,.remote .btn.flash{transform:scale(.97);filter:brightness(1.15)}
/* Stoppuhr */
.sw-main{text-align:center;padding:34px 20px;transition:background .4s}
.sw-main:fullscreen{display:flex;flex-direction:column;justify-content:center;background:var(--bg)}
.sw-label{font-size:.9rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.sw-clock{font-family:var(--font-mono);font-size:clamp(4rem,14vw,9rem);font-weight:700;line-height:1.05;font-variant-numeric:tabular-nums;margin:10px 0}
.sw-main:fullscreen .sw-clock{font-size:22vw}
.sw-target{color:var(--text-2);margin-bottom:12px}
.sw-main.warn{background:rgba(199,129,28,.12)}.sw-main.warn .sw-clock{color:var(--warn)}
.sw-main.over{background:rgba(196,58,58,.12)}.sw-main.over .sw-clock{color:var(--danger)}
.btn.lg{padding:12px 20px;font-size:1rem}
@media (max-width:1024px){.sw-main + .card{order:2}}
/* Feste Spalten im Editor-Raster: Wird die Gliederung ausgeblendet (display:none),
   dürfen Text und Seitenleiste nicht in die frei gewordene Spalte rutschen */
.ed-wrap>.ed-outline{grid-column:1}.ed-wrap>.ed-center{grid-column:2}.ed-wrap>.ed-panel{grid-column:3}
@media (max-width:1024px){.ed-wrap>.ed-center{grid-column:1}.ed-wrap>.ed-outline,.ed-wrap>.ed-panel{grid-column:auto}}

/* ─── Veranschaulichungen finden ─────────────────────────────────────── */
.clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.p-sug{border:1px dashed rgba(var(--accent-rgb),.45);border-radius:var(--r);padding:8px 8px 2px;margin-bottom:12px;background:rgba(var(--accent-rgb),.04)}
.p-sug .lbl{font-weight:650;font-size:.82rem;display:flex;align-items:center;gap:5px;color:var(--accent)}
.il-why{display:flex;flex-wrap:wrap;gap:3px;margin-top:5px}
.il-why .chip{font-size:.7rem}
.chip.il-chip{border-style:solid;border-color:rgba(var(--accent-rgb),.5);color:var(--accent)}
.il{display:flex;flex-direction:column;gap:10px;min-height:0}
.il-top{display:grid;grid-template-columns:1fr minmax(160px,260px) auto;gap:8px;align-items:center}
.il-ctx{padding:6px 10px;border-radius:8px;background:var(--surface-2);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.il-main{display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:14px;height:min(64vh,640px);min-height:320px}
.il-list,.il-prev{overflow:auto;min-height:0;overscroll-behavior:contain}
.il-list{padding-right:4px}
.il-count{margin:0 2px 6px}
.il-row{padding:9px 11px;border:1px solid var(--border);border-radius:var(--r);margin-bottom:7px;cursor:pointer;background:var(--surface);transition:border-color var(--dur),background var(--dur)}
.il-row:hover{border-color:rgba(var(--accent-rgb),.45)}
.il-row.on{border-color:var(--accent);background:rgba(var(--accent-rgb),.07)}
.il-rt{font-weight:650;font-size:.9rem}
.il-rs{margin:1px 0 3px}
.il-rb{color:var(--text-2);line-height:1.45}
.il-prev{border-left:1px solid var(--border);padding:2px 4px 10px 16px}
.il-pt{margin:0 0 6px;font-size:1.2rem;line-height:1.3}
.il-body{font-family:var(--font-editor);font-size:1.02rem;line-height:1.65;margin:10px 0}
.il-body p{margin:0 0 .7em}
.il-acts{display:flex;flex-wrap:wrap;gap:6px;position:sticky;bottom:-10px;background:var(--surface);padding:8px 0}
.il-simr{padding:6px 8px;border-radius:6px;cursor:pointer}
.il-simr:hover{background:var(--surface-2)}
.il-back{display:none;margin-bottom:8px}
@media (max-width:760px){
  .il-top{grid-template-columns:1fr}
  .il-main{grid-template-columns:1fr;height:auto;min-height:0}
  .il-list{max-height:none}
  .il-prev{display:none;border-left:0;padding:0}
  .il-main.show-prev .il-list{display:none}
  .il-main.show-prev .il-prev{display:block}
  .il-back{display:inline-flex}
}

/* ─── Textformatierung: Farben, Hervorhebungen, Listen, Einrückung ───── */
:root,[data-theme="light"],[data-theme="sepia"],.prompter.light{--tc-red:#c43a3a;--tc-orange:#b8650f;--tc-green:#2f7d4f;--tc-blue:#2f5fb0;--tc-purple:#6f45a8;--tc-gray:#6b7280;--hl-yellow:var(--mark);--hl-green:#d6f0db;--hl-blue:#dbe7fa;--hl-pink:#f9d9e3;--hl-orange:#fde0bf;--tc-auto:var(--text)}
[data-theme="dark"],[data-theme="oled"],.prompter:not(.light){--tc-red:#ff8f85;--tc-orange:#ffbb73;--tc-green:#84dca0;--tc-blue:#94bbff;--tc-purple:#cdadff;--tc-gray:#a7b0bd;--hl-green:rgba(90,200,120,.3);--hl-blue:rgba(110,160,255,.3);--hl-pink:rgba(255,120,160,.3);--hl-orange:rgba(255,160,80,.3)}
.prompter:not(.light){--tc-auto:#eef1f5}.prompter.light{--tc-auto:#18202b}
.tc-red{color:var(--tc-red)}.tc-orange{color:var(--tc-orange)}.tc-green{color:var(--tc-green)}.tc-blue{color:var(--tc-blue)}.tc-purple{color:var(--tc-purple)}.tc-gray{color:var(--tc-gray)}.tc-auto{color:var(--tc-auto)}
mark.hl-green{background:var(--hl-green)}mark.hl-blue{background:var(--hl-blue)}mark.hl-pink{background:var(--hl-pink)}mark.hl-orange{background:var(--hl-orange)}.hl-none{background:none!important}
mark.hl-green,mark.hl-blue,mark.hl-pink,mark.hl-orange{color:inherit;border-radius:3px;padding:0 .1em}
.ind1{margin-left:1.6em!important}.ind2{margin-left:3.2em!important}.ind3{margin-left:4.8em!important}.ind4{margin-left:6.4em!important}
.blk-text ul,.blk-text ol,.manu ul,.manu ol,.pt-text ul,.pt-text ol,.pt-card .c-text ul,.pt-card .c-text ol,.il-body ul,.il-body ol{margin:.25em 0 .6em;padding-left:1.45em}
.blk-text li,.manu li,.pt-text li,.pt-card .c-text li{margin:.12em 0;padding-left:.15em}
.blk-text ol li::marker,.manu ol li::marker,.pt-text ol li::marker,.pt-card .c-text ol li::marker{font-weight:700;color:var(--accent)}
.blk-text ul ul,.manu ul ul,.pt-text ul ul{list-style:circle}
.blk-text ol ol,.manu ol ol,.pt-text ol ol{list-style:lower-alpha}
/* Farbwahl */
.fmt-popover{padding:10px 12px}
.fmt-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.fmt-sw{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font:700 15px var(--font-ui);display:grid;place-items:center;padding:0;color:var(--text)}
.fmt-sw:hover{transform:scale(1.08);box-shadow:var(--shadow-sm)}
.fmt-sw.tc.none{color:var(--text)}.fmt-sw.tc-red{color:var(--tc-red)}.fmt-sw.tc-orange{color:var(--tc-orange)}.fmt-sw.tc-green{color:var(--tc-green)}.fmt-sw.tc-blue{color:var(--tc-blue)}.fmt-sw.tc-purple{color:var(--tc-purple)}.fmt-sw.tc-gray{color:var(--tc-gray)}
.fmt-sw.hl.none{background:linear-gradient(135deg,transparent 45%,var(--danger) 47%,var(--danger) 53%,transparent 55%),var(--surface)}
.fmt-sw.hl-yellow{background:var(--mark)}.fmt-sw.hl-green{background:var(--hl-green)}.fmt-sw.hl-blue{background:var(--hl-blue)}.fmt-sw.hl-pink{background:var(--hl-pink)}.fmt-sw.hl-orange{background:var(--hl-orange)}
/* Leiste beim Markieren */
.fmt-bub{position:fixed;z-index:120;display:flex;align-items:center;gap:1px;padding:3px;border-radius:11px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg,0 8px 30px rgba(0,0,0,.18));animation:viewin .14s ease}
.fmt-bub button{border:0;background:none;color:var(--text);height:32px;min-width:32px;padding:0 7px;border-radius:8px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;font:600 .8rem var(--font-ui)}
.fmt-bub button:hover{background:var(--surface-2)}
.fmt-bub button.ai{color:var(--accent)}
.fmt-bub .sep{width:1px;height:20px;background:var(--border);margin:0 3px}
.fmt-bub [hidden]{display:none}
@media (pointer:coarse){.fmt-bub button{height:38px;min-width:38px}}

/* ─── KI-Werkstatt ───────────────────────────────────────────────────── */
.aisel-q{margin:6px 0 0;padding:8px 12px;border-left:3px solid var(--accent);background:rgba(var(--accent-rgb),.06);border-radius:0 8px 8px 0;font-family:var(--font-editor);max-height:180px;overflow:auto;white-space:pre-wrap}
.aiall-acts{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.aiall-act{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r);cursor:pointer}
.aiall-act:has(input:checked){border-color:var(--accent);background:rgba(var(--accent-rgb),.06)}
.aiall-act input{margin-top:3px}
.aiall-act.aiall-top{grid-column:1/-1;border-width:1.5px}
.aiall-act.aiall-top b{font-size:1.02rem}
.aiall-full{grid-column:1/-1;margin:-2px 0 6px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);display:flex;flex-direction:column;gap:10px}
.aiall-full[hidden]{display:none}
.aiall-form{align-self:flex-start;flex-wrap:wrap}
.aiall-form button{display:inline-flex;align-items:center;gap:6px}
.aiall-os{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px 12px}
.aiall-o{display:flex;gap:8px;align-items:flex-start;cursor:pointer;font-size:.88rem;line-height:1.35}
.aiall-o input{margin-top:3px}
.aiall-o b{display:block;font-weight:600}
.aiall-o .small{display:block;margin-top:1px}
.aiall-o:first-child{grid-column:1/-1}
.aiall-o mark{padding:0 3px;border-radius:3px}
.aiall-res{display:flex;flex-direction:column;gap:8px}
.aiall-row{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r)}
.aiall-row>div{flex:1;min-width:0}
.aiall-row.new{border-color:rgba(47,143,91,.45)}.aiall-row.sec{border-color:rgba(var(--accent-rgb),.5);background:rgba(var(--accent-rgb),.05)}
.aiall-row .ai-out{margin-top:6px;max-height:220px;overflow:auto}
.aiall-row details{margin-top:4px}
/* Stoppuhr: Countdown, Tempo, Zeitplan */
.sw-grid{grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
@media (max-width:1024px){.sw-grid{grid-template-columns:1fr}}
.sw-prog{position:relative;overflow:visible}
.sw-prog .sw-pos{position:absolute;top:-4px;width:4px;height:calc(100% + 8px);margin-left:-2px;border-radius:2px;background:var(--text);box-shadow:0 0 0 2px var(--surface)}
.sw-pace{margin-top:12px;min-height:26px;display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}
.pace-chip{padding:4px 12px;border-radius:999px;font-weight:700;font-size:.82rem;background:var(--surface-2)}
.pace-chip.ok{background:rgba(47,143,91,.16);color:var(--ok)}.pace-chip.fast{background:rgba(58,111,196,.16);color:var(--info)}.pace-chip.slow{background:rgba(199,129,28,.18);color:var(--warn)}.pace-chip.over{background:rgba(196,58,58,.16);color:var(--danger)}
.sw-main[data-pace="ok"] .sw-clock{color:var(--ok)}.sw-main[data-pace="fast"] .sw-clock{color:var(--info)}.sw-main[data-pace="slow"] .sw-clock{color:var(--warn)}
.sw-main[data-pace="fast"]{background:rgba(58,111,196,.08)}.sw-main[data-pace="slow"]{background:rgba(199,129,28,.1)}
.sw-plan{max-height:60vh;overflow:auto}
.sw-sec{display:flex;justify-content:space-between;font:700 .72rem var(--font-ui);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:10px 0 4px}
.sw-sec:first-child{margin-top:0}
.sw-row{display:flex;gap:8px;align-items:baseline;padding:6px 10px;border-radius:8px;cursor:pointer;border-left:3px solid transparent}
.sw-row:hover{background:var(--surface-2)}
.sw-row .t{font-family:var(--font-mono);font-size:.8rem;color:var(--text-3);min-width:40px}
.sw-row .k{flex:1;min-width:0;font-size:.9rem}
.sw-row .pg{font-size:.72rem;font-weight:700;color:var(--text-3);white-space:nowrap}
.sw-row.soll{background:rgba(58,111,196,.1);border-left-color:var(--info)}
.sw-row.ist{background:rgba(var(--accent-rgb),.12);border-left-color:var(--accent);font-weight:650}
.sw-row.soll.ist{background:rgba(47,143,91,.14);border-left-color:var(--ok)}
.chip.ans{background:rgba(58,111,196,.1);color:var(--info);border-color:rgba(58,111,196,.35)}
/* Markiermodus */
.fmt-sw.on{outline:2px solid var(--accent);outline-offset:2px}
.hl-chip{position:fixed;left:50%;transform:translateX(-50%);bottom:max(16px,env(safe-area-inset-bottom));z-index:70;display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-radius:30px;background:var(--elev);border:1px solid var(--border);box-shadow:0 12px 32px -14px rgba(0,0,0,.4)}
.hl-chip .fmt-row{margin:0;gap:5px}
.hl-chip .fmt-sw{width:26px;height:26px;border-radius:50%}
.hl-chip-l{display:inline-flex;align-items:center;gap:6px;font:650 .8rem var(--font-ui);color:var(--text-2);white-space:nowrap}
.hl-chip-l svg{width:16px;height:16px;color:var(--accent)}
.hl-chip-x{border:0;background:var(--surface-3);color:var(--text-2);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.hl-chip-x svg{width:14px;height:14px}
html.hl-mode .ed-doc [contenteditable="true"]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M3 21l3-1 11-11-2-2L4 18z' fill='%23f5d142' stroke='%23333' stroke-width='1.2'/%3E%3Cpath d='M15 7l2 2 3-3-2-2z' fill='%23666'/%3E%3C/svg%3E") 3 21,text}
html.hl-mode .ed-doc ::selection{background:rgba(245,209,66,.45)}
@media (max-width:640px){.hl-chip-l{display:none}}
html.zen .hl-chip{bottom:max(64px,env(safe-area-inset-bottom))}
/* Studienleitfaden */
.gd-v{margin-bottom:14px}
.gd-vh{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:4px 2px 6px;border-bottom:1px solid var(--border);margin-bottom:8px;font-family:var(--font-ui)}
.gd-vh b{color:var(--accent)}
.gd-src{padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);margin-bottom:8px}
.gd-h{font-size:.88rem;line-height:1.4}
.gd-h b{color:var(--navy);margin-right:4px}
[data-theme="dark"] .gd-h b,[data-theme="oled"] .gd-h b{color:var(--text)}
.gd-h span{color:var(--text-2)}
.gd-vs{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px}
.gd-vs .chip{cursor:pointer}
.gd-x{font-family:var(--font-editor);font-size:.95rem;line-height:1.55;margin-top:6px;white-space:pre-line;color:var(--text)}
.gd-x.clamp:not(.open){display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.gd-a{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.gd-book{display:flex;flex-direction:column;gap:6px}
.gd-ch{display:flex;gap:10px;align-items:flex-start}
.gd-ch>b{min-width:62px;font-size:.82rem;padding-top:3px;color:var(--text-2)}
.gd-ch>span{display:flex;flex-wrap:wrap;gap:4px}
.gd-ch sup{font-size:.6rem;color:var(--text-3);margin-left:2px}
.gd-info{padding:4px 0 12px}
.gd-dlg{max-height:70vh;overflow:auto}
/* Goldener Kreis um Versnummern mit Studienleitfaden-Einträgen (wie im Study Buddy) – Antippen öffnet den Leitfaden */
:root{--gd-gold:#b8860b;--gd-gold-soft:rgba(184,134,11,.14)}
[data-theme="dark"],[data-theme="oled"]{--gd-gold:#d9b45c;--gd-gold-soft:rgba(217,180,92,.16)}
sup.gd-ring{display:inline-block;box-sizing:border-box;min-width:1.65em;height:1.65em;line-height:1.65em;padding:0 .22em;margin:0 .22em 0 .08em;text-align:center;border-radius:999px;color:var(--gd-gold)!important;box-shadow:inset 0 0 0 1.3px var(--gd-gold);cursor:pointer;transition:background-color .15s;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
sup.gd-ring:hover,sup.gd-ring:active{background:var(--gd-gold-soft)}
sup.gd-ring{position:relative}
sup.gd-ring::after{content:'';position:absolute;inset:-9px -6px}   /* größere Tippfläche auf iPhone/iPad */

/* KI-Seitenbereich: „Ganze Aufgabe ausarbeiten“ */
.ai-full-cta{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;margin-top:6px;padding:12px 14px;border-radius:var(--r);border:1px solid rgba(var(--accent-rgb),.4);background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.03));color:var(--text);cursor:pointer;transition:border-color .15s,transform .15s}
.ai-full-cta:hover{border-color:var(--accent);transform:translateY(-1px)}
.ai-full-cta > .ico{color:var(--accent);flex:0 0 auto;margin-top:2px}
.ai-full-cta b{display:block;font-size:.95rem;margin-bottom:2px}
.ai-full-cta .small{display:block;color:var(--text-2);line-height:1.4}

/* ─── Stichpunkte zum freien Vortragen · Zeitprüfung der KI ─────────────── */
.stich-tag{gap:4px;cursor:pointer;background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.32);color:var(--accent);font-weight:650;flex:none}
.stich-tag.alt{background:var(--surface-2);border-color:var(--border);color:var(--text-2)}
.stich-tag .ico{width:13px;height:13px}
.blk-text.stich ul,.blk-text.stich ol{margin:.15em 0 .45em;padding-left:1.25em}
.blk-text.stich li{margin:.18em 0;line-height:1.45}
.blk-text.stich > ul > li::marker{color:var(--accent);font-size:1.05em}
.blk-text.stich li li{font-size:.95em;color:var(--text-2)}
.blk-text.stich li li::marker{color:var(--text-3)}
.blk-text.stich > p{margin:.35em 0}
.blk-text.stich u{text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:rgba(var(--accent-rgb),.75)}
.ai-time{display:inline-block;padding:1px 7px;border-radius:99px;font-size:.74rem;font-weight:600;white-space:nowrap;background:var(--surface-2);color:var(--text-2)}
.ai-time.ok{background:rgba(46,160,90,.13);color:#25814a}
.ai-time.warn{background:rgba(214,150,30,.15);color:#9a6a08}
.ai-time.err{background:rgba(200,60,50,.13);color:#b23a2f}
.ai-full{margin-top:6px;padding:6px 10px;border-radius:10px;background:var(--surface-2);white-space:pre-wrap;line-height:1.55}
.ai-full summary{cursor:pointer;font-weight:600;color:var(--text-2);white-space:normal}
.ai-out.rich{white-space:normal}
.aiall-time{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;margin-bottom:10px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2)}
.aiall-time > div{flex:1;min-width:0}
.aiall-time .small{margin-top:3px;color:var(--text-2)}
.aiall-time.ok{border-color:rgba(46,160,90,.4);background:rgba(46,160,90,.08)}
.aiall-time.warn{border-color:rgba(214,150,30,.45);background:rgba(214,150,30,.09)}
.aiall-time.err{border-color:rgba(200,60,50,.42);background:rgba(200,60,50,.08)}
.aiall-fhint{margin:6px 0 2px}
[data-theme="dark"] .ai-time.ok,[data-theme="oled"] .ai-time.ok{color:#7fd6a0}
[data-theme="dark"] .ai-time.warn,[data-theme="oled"] .ai-time.warn{color:#f0c060}
[data-theme="dark"] .ai-time.err,[data-theme="oled"] .ai-time.err{color:#ff9488}
/* Bilder, die zur KI-Anfrage gehören (Browser-Weg: zum Anhängen) */
.ai-pics{margin-top:2px;padding:10px 12px;border:1px dashed rgba(var(--accent-rgb),.4);border-radius:12px;background:var(--accent-soft)}
.ai-pics-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.ai-pics-row a{display:flex;flex-direction:column;gap:3px;width:96px;text-decoration:none;color:var(--text-2);font-size:.7rem}
.ai-pics-row img{width:96px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--border);background:var(--surface-2)}

/* ─── Zurück / Vorwärts oben rechts (runde Symbolknöpfe wie in StagePilot) ─── */
.navhist{display:flex;align-items:center;gap:5px;flex:none}
.topbar .actions:not(:empty)+.navhist{padding-left:10px;border-left:1px solid var(--border)}
.topbar .actions:empty+.navhist{margin-left:auto}
.nh-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-2);display:grid;place-items:center;cursor:pointer;padding:0;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform .12s}
.nh-btn svg{width:18px;height:18px;stroke-width:2.2}
.brand small{white-space:nowrap}
.sb-toggle{margin-left:auto;flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-3);display:grid;place-items:center;cursor:pointer;padding:0;transition:background var(--dur),color var(--dur),border-color var(--dur)}
.sb-toggle:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-2)}
.sb-toggle svg{width:17px;height:17px;stroke-width:2.2}
/* Eingeklappt: Logo und Knopf untereinander, beide mittig */
[data-sidebar="collapsed"] .sidebar .brand{flex-direction:column;gap:8px;padding:4px 0 12px}
[data-sidebar="collapsed"] .sidebar .sb-toggle{margin:0;color:var(--accent);border-color:var(--accent)}
/* Handy/Tablet: Die Schublade zeigt immer die vollen Einträge – der Schalter gilt nur am PC */
@media (max-width:1024px){
  .sb-toggle{display:none}
  [data-sidebar="collapsed"] .sidebar .brand{flex-direction:row;gap:11px;padding:4px 8px 14px}
  [data-sidebar="collapsed"] .sidebar .brand div,[data-sidebar="collapsed"] .sidebar .nav-item span,[data-sidebar="collapsed"] .sidebar .nav-sec,
  [data-sidebar="collapsed"] .sidebar .search-trigger span,
  [data-sidebar="collapsed"] .sidebar .sb-foot .label,[data-sidebar="collapsed"] .sidebar .sb-user div{display:block}
  [data-sidebar="collapsed"] .sidebar .search-trigger kbd{display:inline-block}
  [data-sidebar="collapsed"] .sidebar .nav-item,[data-sidebar="collapsed"] .sidebar .search-trigger{justify-content:flex-start;padding:9px 11px}
}
.nh-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.nh-btn:active:not(:disabled){transform:scale(.92)}
.nh-btn:disabled{opacity:.32;cursor:default}
.nh-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (max-width:640px){.nh-btn{width:31px;height:31px}.nh-btn svg{width:16px;height:16px}.navhist{gap:3px}.topbar .actions:not(:empty)+.navhist{padding-left:6px}}
@media print{.navhist{display:none}}

/* ─── Software-Update (Einstellungen → Administration → Update) ─── */
.upd-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.upd-info>div,.upd-info>button{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.upd-info span{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-weight:650}
.upd-info b{font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.upd-info small{color:var(--text-2);font-size:.78rem;overflow:hidden;text-overflow:ellipsis}
.upd-info>button.upd-ver{font:inherit;width:100%;align-items:stretch;text-align:left;cursor:pointer;color:inherit;transition:border-color .15s,background .15s}
.upd-info>button.upd-ver:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--surface-3)}
.upd-info>button.upd-ver[aria-expanded="true"]{border-color:var(--accent)}
.upd-info>button.upd-ver span{display:flex;align-items:center;gap:4px}
.upd-vh{max-height:340px;overflow:auto;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);padding:4px 14px;margin:-4px 0 14px;overscroll-behavior:contain}
.upd-vh-i{padding:10px 0;border-bottom:1px solid var(--border)}
.upd-vh-i:last-child{border-bottom:0}
.upd-vh-i.cur .upd-vh-h b{color:var(--accent)}
.upd-vh-h{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:2px}
.upd-vh ul{margin:6px 0 0;padding-left:20px;font-size:.86rem;color:var(--text-2)}
.upd-vh li{margin:3px 0}
.upd-src>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;margin-bottom:0}
.upd-src>summary::-webkit-details-marker{display:none}
.upd-src>summary h3{margin:0}
.upd-src-sum{margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.upd-src>summary>svg{flex:none;transition:transform .2s;color:var(--text-3)}
.upd-src[open]>summary>svg{transform:rotate(180deg)}
.upd-src[open]>summary{margin-bottom:14px}
.upd-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 18px}
.upd-form .field{margin:0;min-width:0}
.upd-form .span2{grid-column:1/-1}
.upd-form .field .small.muted{margin-top:4px}
.upd-inl{display:flex;gap:8px;align-items:center}
.upd-inl .input{flex:1;min-width:0}
.upd-inl .btn{flex:none}
.upd-tokdel{gap:4px;white-space:nowrap;flex:none}
.upd-libs{display:flex;flex-direction:row;gap:12px;align-items:flex-start;cursor:pointer;background:var(--surface-2);border-radius:var(--r);padding:10px 12px}
.upd-libs>span:last-child{display:flex;flex-direction:column;gap:2px}
.upd-save{display:flex;justify-content:flex-end}
@media (max-width:700px){.upd-form{grid-template-columns:1fr}.upd-inl{flex-wrap:wrap}.upd-src-sum{display:none}}
.upd-tblwrap{max-height:420px;overflow:auto;border-radius:var(--r)}
.upd-dirs{display:flex;flex-wrap:wrap;gap:6px}
.upd-dir{font-size:.8rem;padding:4px 9px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-2)}
.upd-dir.chg{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--accent-soft);color:var(--text)}
.upd-hfiles summary{cursor:pointer}.upd-hfiles code{font-size:.75rem}
.upd-st.entfernt{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}
.upd-res{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.upd-head{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:var(--r);border:1px solid var(--border)}
.upd-head>.ico,.upd-head>svg{flex:none;width:22px;height:22px;margin-top:2px}
.upd-head.avail{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--text)}
.upd-head.avail svg{color:var(--accent)}
.upd-head.ok{background:color-mix(in srgb,var(--ok) 10%,var(--surface));border-color:color-mix(in srgb,var(--ok) 30%,var(--border))}
.upd-head.ok svg{color:var(--ok)}
.upd-msg{padding:8px 12px;border-left:3px solid var(--border-2);background:var(--surface-2);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:.9rem}
.upd-hist,.upd-cur{border:1px solid var(--border);border-radius:var(--r);padding:8px 12px}
.upd-hist summary,.upd-cur summary{cursor:pointer;font-weight:650}
.upd-hv{margin-top:8px}.upd-hv ul{margin:4px 0 0;padding-left:20px;font-size:.88rem}.upd-hv li{margin:2px 0}
.upd-st{display:inline-block;padding:1px 8px;border-radius:999px;font-size:.76rem;font-weight:650;background:var(--surface-3)}
.upd-st.neu{background:color-mix(in srgb,var(--info) 16%,transparent);color:var(--info)}
.upd-st.geaendert{background:var(--accent-soft);color:var(--accent)}
.upd-st.aktuell{background:color-mix(in srgb,var(--ok) 14%,transparent);color:var(--ok)}
.upd-act{white-space:nowrap;text-align:right}.upd-act .btn{margin-left:4px}
.upd-h4{margin:18px 0 8px;font-size:.95rem}
.upd code{font-family:var(--font-mono);font-size:.84em;word-break:break-all}
@media (max-width:900px){.upd-info{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Tabellen auf dem Handy als beschriftete Zeilen */
@media (max-width:700px){
  .rtab thead{display:none}
  .rtab,.rtab tbody,.rtab tr,.rtab td{display:block;width:100%}
  .rtab tr{border:1px solid var(--border);border-radius:var(--r);padding:6px 10px;margin-bottom:8px;background:var(--surface)}
  .rtab td{border:0!important;padding:4px 0!important;display:flex;gap:10px;align-items:baseline;text-align:left}
  .rtab td[data-label]::before{content:attr(data-label);flex:0 0 96px;font-size:.74rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3);font-weight:650}
  .rtab td.upd-act{justify-content:flex-start;padding-top:8px!important}.rtab td.upd-act .btn{margin:0 6px 0 0}
  .upd-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.upd-info>div{padding:8px 10px}.upd-info b{font-size:.95rem}
}
/* Update: Fortschritt, Ergebnis, Sicherungen aufheben */
.upd-prog-box:empty{display:none}
.upd-prog-box{margin-top:14px}
.upd-prog{padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);box-shadow:var(--shadow-sm)}
.upd-prog-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px}
.upd-prog-pct{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}
.upd-prog.ok .upd-prog-pct{color:var(--ok)}
.upd-bar{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden}
.upd-bar>i{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .45s var(--ease)}
.upd-prog:not(.ok):not(.err) .upd-bar>i{background-image:linear-gradient(90deg,rgba(255,255,255,0) 0,rgba(255,255,255,.35) 50%,rgba(255,255,255,0) 100%);background-size:200% 100%;animation:updShine 1.4s linear infinite}
@keyframes updShine{from{background-position:200% 0}to{background-position:-200% 0}}
.upd-prog.ok .upd-bar>i{background:var(--ok)}
.upd-prog.err .upd-bar>i{background:var(--danger)}
.upd-steps{list-style:none;margin:14px 0 0;padding:0;display:flex;gap:6px 14px;flex-wrap:wrap;justify-content:space-between}
.upd-steps li{display:flex;align-items:center;gap:7px;font-size:.86rem;color:var(--text-3);min-width:0}
.upd-steps .dot{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid var(--border-2);display:grid;place-items:center;background:var(--surface)}
.upd-steps .dot svg{width:12px;height:12px}
.upd-steps li.done{color:var(--text-2)}
.upd-steps li.done .dot{background:var(--ok);border-color:var(--ok);color:#fff}
.upd-steps li.cur{color:var(--text);font-weight:650}
.upd-steps li.cur .dot{border-color:var(--accent);border-top-color:transparent;animation:updSpin .8s linear infinite}
.upd-steps li.fail{color:var(--danger);font-weight:650}
.upd-steps li.fail .dot{background:var(--danger);border-color:var(--danger);color:#fff}
@keyframes updSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.upd-steps li.cur .dot,.upd-prog .upd-bar>i{animation:none}}
.upd-prog-t{margin-top:10px;overflow-wrap:anywhere}
.upd-done{margin-top:12px;padding:12px 14px;border-radius:var(--r);background:color-mix(in srgb,var(--ok) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 30%,var(--border));overflow-wrap:anywhere}
.upd-reload{margin-top:4px}
.upd-remember{margin-top:8px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.upd-rem{gap:8px;margin-top:10px;align-items:flex-start}
.upd-keep{display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px;border-radius:var(--r);background:var(--surface-2)}
.upd-keep label{display:flex;flex-direction:column;gap:2px}
.upd-keep .input{width:80px}
@media (max-width:560px){.upd-steps{flex-direction:column;align-items:flex-start}}

/* Lesen mit Seitenspalte (Bibel, Planer): auf schmalen Bildschirmen untereinander */
.bib-grid,.side-grid{grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.side-grid{grid-template-columns:minmax(0,1fr) 340px}
.bib-main{padding:26px 30px}
.bib-grid .bsel,.side-grid > :last-child{position:sticky;top:calc(var(--top-h) + 18px)}
@media (max-width:1024px){
  .bib-grid,.side-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .bib-grid .bsel,.side-grid > :last-child{position:static;top:auto}
  .bib-main{padding:16px 14px}
  /* Ist ein Vers ausgewählt, gehören die Aktionen über den Text – sonst stören sie dort nur */
  .bib-grid.has-sel .bsel{order:-1}
}

/* ─── Höhepunkte der Bibellesung: Prompt für eine andere KI ─── */
.week-sec .week-hl{margin-left:auto;text-transform:none;letter-spacing:0;font-weight:650}
.sch-g{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:0 14px}
.sch-acts{gap:8px;margin:2px 0 10px}
.sch-p{width:100%;font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace);font-size:.82rem;line-height:1.5;resize:vertical}
@media (max-width:640px){.sch-g{grid-template-columns:minmax(0,1fr)}.sch-acts .btn{flex:1 1 auto;justify-content:center}}

/* ── Bibeltext mitten im Text: Platzhalter im Editor ──────────────────── */
.vref{display:inline-block;vertical-align:baseline;margin:0 2px;padding:1px 8px;border-radius:999px;border:1px dashed var(--accent);background:var(--accent-soft);color:var(--accent);font:600 .78em/1.5 var(--font-ui);white-space:nowrap;cursor:grab;user-select:none}
.vref::before{content:"Lies ";opacity:.75}
.blk-text .vref:hover{border-style:solid}
.chip.bible.at{border-style:dashed}
@media print{.vref{border:0;background:none}}
.vbox.gen{margin:6px 0 10px}
.vref.dragging{opacity:.45}
.blk-text .vref{cursor:grab}
.blk-text .vref:active{cursor:grabbing}

/* ─── Original-Disposition (Seitenbereich) ─────────────────────────────── */
.dz{font-size:.9rem;line-height:1.45}
.dz-head h3{margin:6px 0 4px;font-size:1.02rem}
.dz-head .chip{margin-right:4px}
.dz-goal{margin:4px 0 10px;font-size:.84rem;font-style:italic;color:var(--regie)}
.dz-sec{margin:14px 0 6px;font-weight:700;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}
.dz-it{position:relative;margin:3px 0 3px 14px;padding-left:12px}
.dz-it::before{content:"•";position:absolute;left:0;color:var(--accent)}
.dz-it.l1{margin-left:30px}.dz-it.l2{margin-left:46px}.dz-it.l3{margin-left:62px}
.dz-it.l1::before,.dz-it.l2::before,.dz-it.l3::before{content:"–";color:var(--text-3)}
.dz-it.dz-regie{font-style:italic;color:var(--regie);font-size:.84rem}
.dz-it.dz-regie::before{content:""}
.dz-it.cur,.dz-sec.cur{background:var(--bible-bg);border-radius:7px;box-shadow:0 0 0 6px var(--bible-bg)}
.dz-rules{margin:14px 0 0;font-size:.8rem;font-style:italic;color:var(--text-3)}
.dz-min{margin:10px 0 0;text-align:center;font-weight:700;font-size:.8rem;letter-spacing:.04em}
.dz-src{margin:12px 0 0;border-top:1px solid var(--border);padding-top:6px}

/* ─── Übersicht: „Nächste Termine“ in einer schmalen Karte ────────────────
   Der Titel darf zwei Zeilen nutzen, statt nach wenigen Buchstaben zu enden;
   wird die Karte schmal, rücken die Knöpfe unter den Text und der Countdown
   wird etwas kleiner. Gemessen wird die Karte selbst, nicht das Fenster. */
.nx{container-type:inline-size}
.next-card b.ellipsis{white-space:normal;display:-webkit-box;display:box;-webkit-box-orient:vertical;box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
@container (max-width:430px){
  .next-card{grid-template-columns:auto minmax(0,1fr);gap:12px}
  .next-card > .row{grid-column:1/-1;justify-content:flex-end}
  .countdown{min-width:74px;padding:9px 12px}
  .countdown b{font-size:1.5rem}
}

/* ─── Vergleichsübersetzungen ──────────────────────────────────────────── */
.tbib{margin-top:10px;max-width:100%;min-width:0;overflow-wrap:anywhere}
.tbib-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px;font-size:.84rem}
.tbib-list{display:flex;flex-direction:column;gap:7px}
.tb-row{border-left:3px solid var(--tc,var(--accent));background:var(--surface-2);border-radius:0 9px 9px 0;padding:7px 10px 8px 11px}
.tb-top{display:flex;align-items:center;gap:7px;margin-bottom:2px}
.tb-chip{flex:none;font-family:var(--font-ui);font-size:.68rem;font-weight:750;letter-spacing:.02em;color:#fff;background:var(--tc,var(--accent));border-radius:5px;padding:1px 6px;white-space:nowrap}
.tb-name{flex:1;min-width:0;font-size:.74rem;color:var(--text-3)}
.tb-acts{display:flex;gap:1px;opacity:0;transition:opacity var(--dur)}
.tb-row:hover .tb-acts,.tb-row:focus-within .tb-acts{opacity:1}
.tb-tx{font-family:var(--font-read);font-size:.93em;line-height:var(--read-lh,1.6)}
.tb-tx sup,.tb-ctext sup{font-family:var(--font-ui);font-size:.62em;font-weight:700;color:var(--tc,var(--accent));margin-right:.15em}
.tb-fn{border:0;background:none;padding:0 .12em;font-family:var(--font-ui);font-size:.62em;font-weight:700;color:var(--accent);cursor:pointer;vertical-align:super}
.tb-fn.on{text-decoration:underline}
.tb-fnx[hidden]{display:none}
.tb-fnx{display:block;margin-top:4px;font-family:var(--font-ui);font-size:.76rem;color:var(--text-3);border-top:1px dashed var(--border);padding-top:4px}
.tb-fnx b{color:var(--accent);margin-right:.3em}
.tb-pick{display:flex;flex-direction:column;gap:2px;max-height:52vh;overflow:auto}
.tb-pi{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--border)}
.tb-chap .tb-cnav{margin-bottom:4px}
.tb-ctext{font-family:var(--font-read);line-height:var(--read-lh,1.7);max-height:62vh;overflow:auto}
.tb-ctext h4{margin:14px 0 4px;font-size:.92rem;color:var(--accent)}
.tb-cv{margin:.35em 0;cursor:pointer;border-radius:6px;padding:2px 4px}
.tb-cv:hover{background:var(--surface-3)}
.tb-cv.on{background:var(--bible-bg)}
.vpop-tb{margin-top:10px;border-top:1px solid var(--border);padding-top:6px;max-height:42vh;overflow:auto}
.tb-d{text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1.5px;text-underline-offset:2px;text-decoration-color:var(--tc,var(--accent))}
.tbib-hits{display:flex;flex-direction:column;gap:3px;max-height:58vh;overflow:auto}
.tbib-hit{display:block;width:100%;text-align:left;border:0;background:none;border-radius:var(--r-sm);padding:6px 8px;cursor:pointer;font:inherit;color:inherit;border-bottom:1px solid var(--border)}
.tbib-hit:last-child{border-bottom:0}
.tbib-hit:hover{background:var(--surface-3)}
.tbib-hit b{display:block;font-family:var(--font-ui);font-size:.72rem;font-weight:750;color:var(--accent);margin-bottom:1px}
.tbib-hit span{display:block;font-family:var(--font-read);font-size:.88em;line-height:1.5;color:var(--text-2)}
.tbib-hit mark{background:var(--bible-bg,rgba(184,112,79,.18));color:inherit;border-radius:3px;padding:0 1px}
@media (hover:none){ .tb-acts{opacity:.9} }

/* ─── Teilen: Freigaben, Einladungen ───────────────────────────────────── */
.sh .lbl{margin-top:0}
.sh-new{background:var(--surface-2);border-radius:var(--r);padding:14px 16px}
.sh-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;row-gap:6px;padding:9px 10px;border-bottom:1px solid var(--border)}
.sh-row:last-child{border-bottom:0}
.sh-inv{display:flex;align-items:center;gap:10px;flex-wrap:wrap;row-gap:8px;padding:10px 12px;background:var(--surface-2);border-radius:var(--r-sm);border-left:3px solid var(--accent)}
.sh-box{margin-bottom:16px}

/* ── Medien-Hub ─────────────────────────────────────────────────────────── */
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px}
.mtile{position:relative;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);overflow:hidden;cursor:pointer;transition:transform .15s var(--ease),box-shadow .2s,border-color .2s;outline:none}
.mtile:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--border-2)}
.mtile:focus-visible{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.4)}
.mtile.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}
.mtile.trashed{opacity:.72}
.mt-img{position:relative;aspect-ratio:4/3;background:var(--surface-3);display:grid;place-items:center;overflow:hidden}
.mt-img img{width:100%;height:100%;object-fit:cover;display:block}
.mt-ico{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--text-3);font-size:.72rem;font-weight:700;letter-spacing:.06em}
.mt-ico .ico{width:34px;height:34px}
.mt-play{position:absolute;inset:0;margin:auto;width:46px;height:46px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center;backdrop-filter:blur(4px);pointer-events:none}
.mt-play .ico{width:20px;height:20px;margin-left:3px}
.mt-badge{position:absolute;right:6px;bottom:6px;background:rgba(0,0,0,.66);color:#fff;font-size:.7rem;font-weight:650;padding:2px 7px;border-radius:20px;font-variant-numeric:tabular-nums;max-width:calc(100% - 12px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-check{position:absolute;left:7px;top:7px;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.9);border:1.5px solid rgba(0,0,0,.25);display:grid;place-items:center;color:transparent;opacity:0;transition:opacity .15s;cursor:pointer}
.mt-check .ico{width:14px;height:14px}
.mtile:hover .mt-check,.selecting .mt-check,.mtile.sel .mt-check,.mpick .mt-check{opacity:1}
.mtile.sel .mt-check,tr.sel .mt-check{background:var(--accent);border-color:var(--accent);color:#fff}
.mt-fav{position:absolute;right:7px;top:7px;color:#f2b632;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.mt-fav .ico{fill:currentColor;width:18px;height:18px}
.mt-shared{position:absolute;right:7px;top:30px;color:#fff;background:rgba(0,0,0,.5);border-radius:10px;padding:2px 4px;display:flex}
.mt-cap{padding:8px 10px 9px;display:flex;flex-direction:column;gap:1px;min-width:0}
.mt-cap b{font-size:.85rem;font-weight:620}
.mt-cap span{font-size:.72rem;color:var(--text-3)}
.mh-results{min-height:200px}
.mh-selbar[hidden]{display:none!important}
.mh-selbar{position:sticky;top:calc(var(--top-h) + 6px);z-index:5;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;margin-bottom:12px;border-radius:var(--r-lg);background:var(--elev);border:1px solid var(--accent);box-shadow:var(--shadow)}
.mh-table td{vertical-align:middle}.mh-table tr{cursor:pointer}.mh-table tr.sel{background:var(--accent-soft)}
.mh-table .mt-check{position:static;opacity:1}
.mh-th{width:56px;height:42px;object-fit:cover;border-radius:6px;display:block}
.mhub section{position:relative}
.mh-drop,.mpick-drop{display:none;position:absolute;inset:0;z-index:6;border:2.5px dashed var(--accent);border-radius:var(--r-xl);background:rgba(var(--accent-rgb),.08);backdrop-filter:blur(2px);flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--accent);pointer-events:none;min-height:240px}
.mh-drop .ico,.mpick-drop .ico{width:40px;height:40px}
.mh-drop span{font-size:.85rem;color:var(--text-2)}
section.drag .mh-drop,.mpick.drag .mpick-drop{display:flex}
.chip.atag{background:transparent;border:1px dashed var(--border-2);color:var(--text-2)}
.chip.atag.on{border-style:solid;border-color:var(--accent);color:var(--accent)}
.chip.atag button,.chip.tagc button{background:none;border:0;padding:0;margin-left:2px;color:inherit;opacity:.6;cursor:pointer;display:flex}
.chip.atag button:hover,.chip.tagc button:hover{opacity:1}
/* Detail */
.mdet{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:20px}
.mdet-prev{background:#0c0f14;border-radius:var(--r-lg);display:grid;place-items:center;min-height:280px;max-height:70vh;overflow:hidden}
.mp-img{max-width:100%;max-height:70vh;object-fit:contain;display:block}
.mp-video{width:100%;max-height:70vh;background:#000;display:block}
.mp-audio{display:flex;flex-direction:column;align-items:center;gap:16px;padding:30px;color:#fff;width:100%}
.mp-audio > .ico{width:48px;height:48px;opacity:.7}.mp-audio audio{width:100%}
.mp-doc{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px;color:#eee}
.mp-doc img{max-height:48vh;max-width:100%;border-radius:6px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.mp-doc .ico{width:56px;height:56px}
.mdet-side .field{margin-bottom:10px}
.mdet-info{margin-top:6px;line-height:1.6}
.use-list{display:flex;flex-direction:column;gap:4px;max-height:160px;overflow:auto}
.use-it{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--r-sm);background:var(--surface-2);color:var(--text);text-decoration:none;font-size:.86rem;min-width:0}
.use-it:hover{background:var(--surface-3)}.use-it span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tag-in{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:6px 8px;border:1px solid var(--border-2);border-radius:var(--r);background:var(--surface);cursor:text;min-height:42px}
.tag-in input{flex:1;min-width:120px;border:0;background:transparent;outline:none;color:var(--text);font:inherit;padding:3px}
.tag-in .tags{display:contents}
.tag-in.ro{pointer-events:none;opacity:.8}.tag-in.ro input{display:none}
.chip.tagc{background:var(--accent-soft);color:var(--accent)}
/* Hochladen */
.up-tray{position:fixed;right:18px;top:calc(var(--top-h) + 12px);z-index:280;width:330px;max-width:calc(100vw - 36px);background:var(--elev);border:1px solid var(--border-2);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:10px 12px;animation:popin .2s var(--ease)}
.up-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}.up-h b{flex:1}
.up-list{display:flex;flex-direction:column;gap:8px;max-height:40vh;overflow:auto}
.up-row{display:grid;grid-template-columns:1fr;gap:3px;font-size:.82rem}
.up-row small{color:var(--text-3);font-size:.72rem}
.up-row.ok .progress>i{background:var(--ok,#2f8f5b)}.up-row.err small{color:var(--danger)}.up-row.err .progress>i{background:var(--danger)}
/* Auswahl-Dialog */
.mpick{position:relative;min-height:320px}
.mpick-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.mpick-sug{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-bottom:10px}
.mpick-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:56vh;overflow:auto;padding:2px}
.mpick .mt-cap{padding:6px 8px}
/* jw.org-Videos */
.jwv-card{display:flex;gap:14px;align-items:center;padding:10px;border-radius:var(--r-lg);background:var(--surface-2);border:1px solid var(--border)}
.jwv-card img,.jwv-card .mt-ico{width:150px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;flex:none;background:var(--surface-3);display:grid;place-items:center}
.jwv-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.jwv-cat{position:relative;border:0;padding:0;border-radius:var(--r);overflow:hidden;cursor:pointer;aspect-ratio:16/9;background:linear-gradient(135deg,#2c3a4f,#1b2330);color:#fff;text-align:left}
.jwv-cat::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.72))}
.jwv-cat img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.72)}
.jwv-cat span{z-index:1;position:absolute;left:10px;right:10px;bottom:8px;font-weight:650;font-size:.86rem;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.jwv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.jwv-it{position:relative;cursor:pointer;border-radius:var(--r);overflow:hidden;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column}
.jwv-it:hover{border-color:var(--accent)}
.jwv-it img,.jwv-it .mt-ico{width:100%;aspect-ratio:16/9;object-fit:cover;display:grid;place-items:center;background:var(--surface-3)}
.jwv-it .mt-badge{bottom:auto;top:calc(56.25% * 1 - 26px)}
.jwv-it b{font-size:.82rem;padding:7px 9px;font-weight:600}
.jwv-crumb{margin-bottom:8px;color:var(--text-3)}.jwv-crumb a{color:var(--accent)}
.jwv-browse{max-height:46vh;overflow:auto}
/* Editor: Video-/Datei-Kacheln an Punkten */
.blk-imgs figure{position:relative}
.blk-imgs .vbadge{position:absolute;left:6px;top:6px;background:rgba(0,0,0,.65);color:#fff;font-size:.68rem;font-weight:650;padding:2px 7px;border-radius:12px;display:flex;align-items:center;gap:3px}
.blk-imgs .vbadge .ico{width:11px;height:11px}
.blk-imgs .ficon{width:150px;height:96px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-3)}
/* Präsentationsfenster: Video */
.pw-video{width:100vw;height:100vh;object-fit:contain;background:#000;display:block}
.c-img .c-vid{position:relative;display:block;cursor:pointer;height:22vh;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#1f2530;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.c-img .c-vid img{width:100%;height:100%;max-height:none!important;object-fit:cover;border-radius:0!important;box-shadow:none!important;display:block}
.pt-text .c-img .c-vid{height:18vh}
.c-img .c-vid .mt-play{width:64px;height:64px}
.c-img .c-vid .mt-badge{font-size:.85rem}
.pt-video{position:fixed;inset:0;z-index:230;background:#000;display:flex;flex-direction:column}
.pt-video video{flex:1;min-height:0;width:100%;background:#000}
.pt-video .pv-bar{display:flex;gap:8px;align-items:center;padding:10px 14px;background:#0d0f13;color:#fff}
@media (max-width:900px){.mdet{grid-template-columns:1fr}.mdet-prev{min-height:200px}}
.mh-filter{display:none}
@media (max-width:720px){.mh-filter{display:inline-flex}.mgrid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.mhub .lib-side{display:none}.mh-selbar .btn span{display:none}}
.lib-m{position:relative;width:84px;height:62px;border-radius:8px;overflow:hidden;background:var(--surface-3);display:grid;place-items:center}
.lib-m img{width:100%;height:100%;object-fit:cover}
.lib-m .btn{position:absolute;right:3px;top:3px;padding:2px;min-height:0;background:rgba(0,0,0,.55);color:#fff;border:0}
.blk-imgs figure.missing{opacity:.7}
/* Per Link einfügen: Bilder verknüpfen oder speichern */
.lnk-tabs{margin-bottom:14px;display:inline-flex;flex-wrap:wrap}
.lnk-tabs button{display:inline-flex;gap:6px;align-items:center}
.lnk-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0 6px}
.lnk-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);cursor:pointer;min-width:0}
.lnk-opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft,var(--surface-2));box-shadow:0 0 0 1px var(--accent) inset}
.lnk-opt input{margin-top:3px;accent-color:var(--accent)}
.lnk-opt b{display:flex;gap:6px;align-items:center;font-size:.9rem}
.lnk-opt small{display:block;color:var(--text-3);font-size:.78rem;line-height:1.35;margin-top:2px}
.lnk-res{margin-top:12px}
.lnk-one img{width:180px;max-height:140px;object-fit:contain;aspect-ratio:auto;background:var(--surface-3)}
.lnk-pagebar{gap:8px;align-items:center;margin:12px 0 8px}
.lnk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:44vh;overflow:auto;padding:2px}
.lnk-img{position:relative;display:block;border-radius:var(--r);overflow:hidden;border:2px solid var(--border);cursor:pointer;background:var(--surface-3);aspect-ratio:4/3}
.lnk-img input{position:absolute;opacity:0;pointer-events:none}
.lnk-img img{width:100%;height:100%;object-fit:cover;display:block}
.lnk-img img.err{opacity:.25}
.lnk-img em{position:absolute;left:0;right:0;bottom:0;padding:14px 7px 5px;font-style:normal;font-size:.72rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.lnk-img .mt-check{opacity:0}
.lnk-img.on{border-color:var(--accent)}
.lnk-img.on .mt-check{opacity:1;background:var(--accent);color:#fff}
.lnk-foot{gap:8px;align-items:center;margin-top:10px;position:sticky;bottom:0;background:var(--surface);padding-top:8px}
.lnk-src{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);min-width:0}
.lnk-src a{display:block;max-width:100%}
.mt-link{position:absolute;left:7px;bottom:7px;color:#fff;background:rgba(0,0,0,.55);border-radius:10px;padding:3px 5px;display:flex}
@media (max-width:640px){.lnk-mode{grid-template-columns:1fr}.lnk-one{flex-wrap:wrap}.lnk-one img{width:100%}.lnk-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}
/* Medien am Punkt frei skalieren (Griff an der Ecke) */
.blk-imgs .fig-box{position:relative}
.blk-imgs figure.sized{width:auto;max-width:100%;min-width:80px}
.blk-imgs figure.sized img{width:100%;height:auto;max-height:none;object-fit:contain;background:var(--surface-3)}
.blk-imgs figure.sized .ficon{width:100%}
.fig-rs{position:absolute;right:0;bottom:0;width:26px;height:26px;cursor:nwse-resize;z-index:3;touch-action:none;opacity:0;transition:opacity .15s;
  background:linear-gradient(135deg,transparent 0 52%,rgba(0,0,0,.55) 52% 100%);border-top-left-radius:4px}
.fig-rs::after{content:'';position:absolute;right:5px;bottom:5px;width:9px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;border-bottom-right-radius:2px}
.blk-imgs figure:hover .fig-rs,.blk-imgs figure.rs-active .fig-rs,.blk-imgs figure:focus-within .fig-rs{opacity:1}
@media (hover:none){.fig-rs{opacity:.85}}
.blk-imgs figure.rs-active{outline:2px solid var(--accent);outline-offset:1px;user-select:none}
.fig-rs-lbl{position:absolute;right:8px;top:8px;background:rgba(0,0,0,.72);color:#fff;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:8px;z-index:4;pointer-events:none}
.pt-card .c-img img.sized,.pt-text .c-img img.sized{max-height:78vh;height:auto;object-fit:contain}
.c-img .c-vid.sized{height:auto!important;max-height:78vh}

/* ── Offline-Modus ──────────────────────────────────────────────────────── */
.off-root{position:fixed;inset:0;z-index:150;overflow:auto;background:var(--bg);color:var(--text)}
.off-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--bg);border-bottom:1px solid var(--border)}
.off-head img{width:38px;height:38px;border-radius:10px}.off-head b{display:block;font-family:var(--font-display);font-size:1.15rem}.off-head span{font-size:.78rem;color:var(--text-3)}
.off-list{max-width:820px;margin:0 auto;padding:18px;display:flex;flex-direction:column;gap:10px}
.off-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);cursor:pointer}
.off-card:hover{border-color:var(--accent)}.off-card>div:first-child{flex:1}
.off-read{position:fixed;inset:0;z-index:160;overflow:auto;background:var(--bg);color:var(--text)}
.off-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg);border-bottom:1px solid var(--border)}
.off-ms{max-width:880px;margin:0 auto;padding:22px 20px 30vh;font:19px/1.65 var(--font-editor,Georgia,serif)}
.off-ms h1{font-size:1.7em;line-height:1.2;margin:.2em 0}.off-ms .meta{color:var(--text-3);font:14px var(--font-ui)}.off-ms .goal{margin:1em 0;padding:.6em .9em;border-left:3px solid var(--accent);color:var(--text-2);font-style:italic}
.off-ms h2{display:flex;justify-content:space-between;gap:10px;font:700 12px var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-top:1px solid var(--border);padding-top:1em;margin:2em 0 .8em}.off-ms h2 small{color:var(--text-3);letter-spacing:0}
.off-ms .it{margin:0 0 1.2em;padding-left:.8em;border-left:3px solid var(--kc,var(--border))}.off-ms .it.silent{opacity:.7}
.off-ms .dp{display:flex;gap:8px;font:700 14px/1.4 var(--font-ui)}.off-ms .dp em{color:var(--kc);font-style:normal;text-transform:uppercase;font-size:11px;letter-spacing:.08em;padding-top:2px}.off-ms .dp span:first-of-type{flex:1}.off-ms .dp .t{color:var(--text-3);font-weight:500}
.off-ms .rg{color:#b8860b;font:italic 14px var(--font-ui)}.off-ms blockquote{margin:.5em 0 .8em;padding:.5em .9em;border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:0 10px 10px 0}.off-ms blockquote.q{border-color:#3a6fc4;background:rgba(58,111,196,.09)}
.off-ms blockquote b,.off-ms blockquote .r{color:var(--accent);font:700 13px var(--font-ui);margin-right:4px}.off-ms sup{color:var(--accent);font-size:.6em}
.off-ms figure{margin:.6em 0}.off-ms figure img{max-width:100%;max-height:60vh;border-radius:10px;display:block;cursor:zoom-in}.off-ms figcaption{font:13px var(--font-ui);color:var(--text-3);margin-top:3px}.off-ms .cit{font:13px var(--font-ui);color:var(--text-3)}
.off-lb{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;cursor:zoom-out}.off-lb img{max-width:96vw;max-height:94vh}
.off-sec{margin:14px 2px 0;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}
.off-tr{max-width:820px;margin:0 auto;padding:12px 16px 40px}

/* ── Hinweisleiste „Ohne Verbindung“ ──────────────────────────────────── */
.offbar{position:fixed;left:50%;bottom:calc(14px + var(--sab,0px));z-index:220;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:min(680px,calc(100vw - 20px));padding:9px 12px;border-radius:999px;background:var(--elev,var(--surface));border:1px solid var(--border-2,var(--border));box-shadow:0 14px 40px -12px rgba(0,0,0,.4);font:600 .84rem/1.3 var(--font-ui);color:var(--text-2)}
.offbar svg{flex:none;color:var(--warn,#b8860b)}
.offbar span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.offbar .btn{flex:none}
@media (max-width:720px){
  .offbar{left:10px;right:10px;transform:none;max-width:none;border-radius:16px;flex-wrap:wrap;bottom:calc(66px + var(--sab,0px))}
  .offbar span{white-space:normal;flex:1 1 100%}
}
html.has-offbar .ap{bottom:calc(74px + var(--sab,0px))}
@media print{.offbar{display:none}}

/* ── Sichere Ränder (Notch, Dynamic Island, Statusleiste, Home-Balken) ──
   Mit viewport-fit=cover und als Web-App auf dem Home-Bildschirm reicht die
   Seite bis unter die Statusleiste. Alles, was oben oder unten am Rand
   klebt, bekommt deshalb den nötigen Abstand. */
.topbar{height:var(--top-h);padding-top:var(--sat);padding-left:max(24px,var(--sal));padding-right:max(24px,var(--sar))}
.sidebar{padding-top:calc(16px + var(--sat));padding-bottom:calc(16px + var(--sab));padding-left:max(12px,var(--sal))}
.overlay{padding-top:calc(6vh + var(--sat));padding-bottom:calc(16px + var(--sab));padding-left:max(16px,var(--sal));padding-right:max(16px,var(--sar))}
.modal{max-height:calc(100dvh - 6vh - var(--sat) - var(--sab) - 16px)}
.toasts{bottom:calc(20px + var(--sab))}
.lock{padding:calc(20px + var(--sat)) max(20px,var(--sar)) calc(20px + var(--sab)) max(20px,var(--sal))}
.pt-top{padding-top:calc(12px + var(--sat));padding-left:max(18px,var(--sal));padding-right:max(18px,var(--sar))}
.pt-bar{padding-bottom:calc(10px + var(--sab));padding-left:max(16px,var(--sal));padding-right:max(16px,var(--sar))}
.pt-video{padding-top:var(--sat)}.pt-video .pv-bar{padding-bottom:calc(10px + var(--sab))}
.off-head{padding-top:calc(12px + var(--sat));padding-left:max(18px,var(--sal));padding-right:max(18px,var(--sar))}
.off-bar{padding-top:calc(10px + var(--sat));padding-left:max(14px,var(--sal));padding-right:max(14px,var(--sar))}
.off-list{padding-bottom:calc(18px + var(--sab))}
.bc-pill{bottom:calc(16px + var(--sab))}

.pdfv{padding-top:var(--sat);padding-bottom:var(--sab)}
.present-win .pw-cap{bottom:calc(3vh + var(--sab))}
.sw-main:fullscreen{padding-top:var(--sat);padding-bottom:var(--sab)}
@media (max-width:1024px){
  .topbar{padding-left:max(12px,var(--sal));padding-right:max(12px,var(--sar))}
  .view{padding-left:max(14px,var(--sal));padding-right:max(14px,var(--sar))}
  .tabbar{padding-left:max(6px,var(--sal));padding-right:max(6px,var(--sar))}
  .toasts{bottom:calc(84px + var(--sab))}
  .ed-panel{padding-bottom:var(--sab)}
  .in-editor .main{height:calc(100dvh - 64px - var(--sab))}
}
@media (max-width:720px){
  .overlay{padding-top:calc(3vh + var(--sat));padding-bottom:calc(8px + var(--sab));padding-left:max(8px,var(--sal));padding-right:max(8px,var(--sar))}
  .modal{max-height:calc(100dvh - 3vh - var(--sat) - var(--sab) - 8px)}
}
.sb-back{display:none}
@media (max-width:1024px){
  .sidebar{z-index:60}
  .sidebar.open ~ .sb-back{display:block;position:fixed;inset:0;z-index:55;background:rgba(10,14,20,.38);animation:fadein .2s ease}
  .tabbar{padding-bottom:calc(6px + var(--sab))}
}
/* Seitenbereich im Editor auf Handy/Tablet: schließbar, Navigationsleiste bleibt frei */
.pclose{display:none!important}
.ed-pback{display:none}
@media (max-width:1024px){
  .ed-panel{bottom:calc(64px + var(--sab))!important;padding-bottom:0!important}
  .ed-panel .ptabs{padding-right:52px}
  .pclose{display:grid!important;place-items:center;position:absolute;top:0;right:0;z-index:3;width:48px;height:47px;border:0;border-left:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;background:var(--surface);color:var(--text-2);box-shadow:-14px 0 14px -6px var(--surface);cursor:pointer;padding:0}
  .pclose svg{width:18px;height:18px}
  [data-panel="open"] .ed-pback{display:block;position:fixed;left:0;right:0;top:var(--top-h);bottom:calc(64px + var(--sab));z-index:44;background:rgba(10,14,20,.32);animation:fadein .2s ease}
}
/* Titel oben auf dem Handy: höchstens zwei Zeilen */
@media (max-width:720px){
  #title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:1rem;line-height:1.22;min-width:0;flex:1;word-break:break-word}
  .topbar{gap:8px}
}
/* Herunterziehen zum Aktualisieren */
.ptr{position:fixed;left:50%;top:calc(var(--sat) + 8px);z-index:90;transform:translate(-50%,-60px);opacity:0;pointer-events:none;transition:transform .25s var(--ease),opacity .2s}
.ptr.on{transition:none}
.ptr-i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--elev);border:1px solid var(--border);box-shadow:0 8px 22px -10px rgba(0,0,0,.45);color:var(--text-3)}
.ptr-i svg{width:20px;height:20px}
.ptr.ready .ptr-i{color:var(--accent);border-color:var(--accent)}
.ptr.spin{transition:transform .2s var(--ease)}
.ptr.spin .ptr-i{color:var(--accent);animation:ptrspin .8s linear infinite}
@keyframes ptrspin{to{transform:rotate(360deg)}}
/* Kleine Fenster (Popover): Schließen-Knopf auf Touch-Geräten, auf dem Handy als Blatt von unten */
.pop-x{display:none}
@media (hover:none),(max-width:720px){
  .pop-x{display:grid;place-items:center;float:right;position:relative;z-index:2;width:34px;height:34px;margin:-6px -8px 6px 10px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text-2);cursor:pointer;padding:0}
  .pop-x svg{width:16px;height:16px}
}
.pop-back{position:fixed;inset:0;z-index:269;background:rgba(10,14,20,.38);animation:fadein .15s ease;cursor:pointer}
@media (max-width:720px){
  .popover{left:8px!important;right:8px!important;top:auto!important;bottom:calc(8px + var(--sab))!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - var(--sat) - var(--sab) - 40px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-radius:18px;animation:popup .2s var(--ease)}
  @keyframes popup{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
}
/* Seitenansicht: Text beginnt unter der Statusleiste (iPad/iPhone als App vom Home-Bildschirm) */
.pgv-content{top:calc(14 * var(--u) + var(--sat))}
/* Deckender Streifen oben (siehe syncThemeColor): Safari 26 prüft die Farbe knapp unterhalb der Statusleiste bzw. seiner
   eigenen Leiste – der Streifen reicht deshalb 6px darüber hinaus. Was oben bedient wird, beginnt erst darunter. */
#satStrip{position:fixed;left:0;right:0;top:0;height:calc(var(--sat) + 6px);z-index:2147483000}
.pgv-ui{padding-top:calc(var(--sat) + 12px)}
.lb .lb-top{padding-top:calc(10px + var(--sat))}
/* iPad/iPhone: kein Glas-Effekt (backdrop-filter) und kein bewegter Hintergrund. Safari zeichnet Text in Bereichen mit
   Hintergrund-Weichzeichner (Seitenleiste, untere Leiste, Fenster) sichtbar weich – stattdessen deckende Flächen, alles scharf. */
.ios *,.ios *::before,.ios *::after{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.ios .sidebar,.ios .tabbar{background:var(--surface)}
.ios body::before,.ios .hero::before{animation:none!important}

/* ─── Schriftgröße je Bereich: Zwei-Finger-Geste (iPhone/iPad) oder A− / A+ (PC) ─── */
/* In markierten Bereichen zoomt die Geste die Schrift, nicht die ganze Seite (abschaltbar: data-pinch="0") */
:root:not([data-pinch="0"]) [data-zoomzone]{touch-action:pan-x pan-y}
.bible-reader{font-size:calc(1.08rem * var(--z-bible,1))}
.verse-card{font-size:calc(1.04rem * var(--z-bible,1))}
.ed-panel .pitem .x.vt{font-size:calc(.87rem * var(--z-bible,1))}
.gd-x{font-size:calc(.95rem * var(--z-guide,1))}
.gd-h{font-size:calc(.88rem * var(--z-guide,1))}
.zbtns{display:inline-flex;align-items:center;gap:2px;flex:none}
.zbtns button{font-weight:700;letter-spacing:.01em;min-width:32px;justify-content:center}
.ed-toolbar .zbtns .tb{min-width:30px;font-size:.84rem}
/* Touch-Geräte ohne Maus: keine Knöpfe – dort mit zwei Fingern (ist die Geste abgeschaltet, bleiben die Knöpfe) */
@media (hover:none) and (pointer:coarse){:root:not([data-pinch="0"]) .zbtns{display:none!important}}
.zbadge{position:fixed;left:50%;top:calc(var(--sat,0px) + 74px);transform:translate(-50%,-6px);z-index:420;background:rgba(18,24,32,.88);color:#fff;padding:7px 15px;border-radius:999px;font:600 .88rem/1.2 var(--font-ui);pointer-events:none;opacity:0;transition:opacity .18s,transform .18s;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.zbadge.on{opacity:1;transform:translate(-50%,0)}

/* ─── Diensttreff und Hirtenbesuch lesen: eine Größe für den ganzen Inhalt ───
   Beide Bereiche teilen --z-treff (je Gerät gespeichert). Der Grundwert ist 1em,
   damit der Offline-Leser seine größere Grundschrift behält; Teile mit eigener
   Größe werden mit demselben Faktor mitgezogen. Knöpfe und Chips bleiben, wie
   sie sind – sie sind Bedienung, kein Text. */
[data-zoomzone="treff"] .tr-doc{font-size:calc(1em * var(--z-treff,1))}
.hb-vshow[data-zoomzone="treff"]{font-size:calc(1.04rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-title{font-size:calc(1.5rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-top{font-size:calc(.78rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-sec h4{font-size:calc(.74rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-sec p{font-size:calc(.98rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-e p{font-size:calc(1.04rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-l,[data-zoomzone="treff"] .tr-after{font-size:calc(.95rem * var(--z-treff,1))!important}
[data-zoomzone="treff"] .tr-l span,[data-zoomzone="treff"] .tr-after span{font-size:calc(.7rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-vtext{font-size:calc(1rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-qhint{font-size:calc(.8rem * var(--z-treff,1))!important}
[data-zoomzone="treff"] .tr-q-b > b{font-size:calc(1rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-ans{font-size:calc(.88rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-ans summary{font-size:calc(.8rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-xq{font-size:calc(.98rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-mf figcaption{font-size:calc(.84rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-end{font-size:calc(.8rem * var(--z-treff,1))}
[data-zoomzone="treff"] .tr-hist li{font-size:calc(.88rem * var(--z-treff,1))}
[data-zoomzone="treff"] .hb-quote footer{font-size:calc(.8rem * var(--z-treff,1))}
[data-zoomzone="treff"] .hb-take{font-size:calc(1.02rem * var(--z-treff,1))}
[data-zoomzone="treff"] .hb-notes{font-size:calc(.92rem * var(--z-treff,1))}
[data-zoomzone="treff"] .hb-vs-for{font-size:calc(.78rem * var(--z-treff,1))}
@media (max-width:640px){[data-zoomzone="treff"] .tr-title{font-size:calc(1.3rem * var(--z-treff,1))}}
[data-zoomzone="treff"] .hb-doc .tr-top .zbtns{margin-left:auto}

/* ─── Vergleichsübersetzungen: eine Größe für alle Übersetzungen ───────────
   Gezoomt wird nur der Bibeltext selbst (Verse, Fußnoten, Kapitel, Treffer
   der Wortsuche). Kürzel, Namen und Knöpfe bleiben, wie sie sind. */
.tb-tx{font-size:calc(.93em * var(--z-tbib,1))}
.tb-fnx{font-size:calc(.76rem * var(--z-tbib,1))}
.tb-ctext{font-size:calc(1em * var(--z-tbib,1))}
.tb-ctext h4{font-size:calc(.92rem * var(--z-tbib,1))}
.tbib-hit span{font-size:calc(.88em * var(--z-tbib,1))}
.tbib-h .zbtns button{min-width:28px;padding-left:5px;padding-right:5px}

/* ─── Bibelstellen-Wähler ──────────────────────────────────────────────
   Kachelgitter für Buch, Kapitel und Vers. Die Spaltenzahl rechnet das
   Gitter selbst aus (auto-fill), der Wähler passt also vom Handy bis zum
   breiten Fenster. Feste Farbtöne für die Bibelteile – damit die
   Zuordnung unabhängig vom Farbschema gleich bleibt. */
:root{ --bib-he:#2f6fb8; --bib-gr:#3f8a63; --bib-ch:#c7761f; --bib-v:#7a5b9f; }
[data-theme="dark"]{ --bib-he:#5a94d8; --bib-gr:#5fae84; --bib-ch:#dd9a4a; --bib-v:#a287c4; }
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){ --bib-he:#5a94d8; --bib-gr:#5fae84; --bib-ch:#dd9a4a; --bib-v:#a287c4; }}

.bpk{display:flex;flex-direction:column;min-height:0;gap:0}
.bpk-q{margin-bottom:8px}
.bpk-sug{display:block;width:100%;text-align:left;border:0;border-radius:var(--r-sm);padding:8px 12px;margin-bottom:8px;
  background:var(--accent-soft);color:var(--accent);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer}
.bpk-sug[hidden]{display:none}
.bpk-path{display:flex;align-items:center;flex-wrap:wrap;gap:2px;font-size:.82rem;border-bottom:1px solid var(--border);padding-bottom:6px}
.bpk-path button{border:0;background:none;padding:4px 8px;border-radius:var(--r-sm);cursor:pointer;color:var(--accent);font:inherit;font-weight:700}
.bpk-path button:disabled{color:var(--text-3);cursor:default;font-weight:600}
.bpk-path button:not(:disabled):hover{background:var(--surface-2)}
.bpk-path .bpk-sep{color:var(--text-3)}
.bpk-moderow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--border)}
.bpk-modetitle{font-size:.7rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}
.bpk-mode button{white-space:nowrap}

.bpk-body{flex:1 1 auto;min-height:0;max-height:min(56vh,620px);overflow-y:auto;overscroll-behavior:contain;padding:12px 2px 6px}
.bpk-grp + .bpk-grp{margin-top:16px}
.bpk-grp-t{margin:0 0 7px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}
.bpk-grid{display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(74px,1fr))}
.bpk-grid.num{grid-template-columns:repeat(auto-fill,minmax(48px,1fr))}
.bpk-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:46px;padding:6px 4px;
  border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text);
  font:inherit;font-family:var(--font-ui);font-size:.9rem;font-weight:700;cursor:pointer;text-align:center;
  transition:background var(--dur),border-color var(--dur),transform .08s}
.bpk-tile.wide{grid-column:span 2}
.bpk-tile:hover{border-color:var(--accent)}
.bpk-tile:active{transform:scale(.96)}
.bpk-tile:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.bpk-tile small{display:none;font-size:.62rem;font-weight:600;line-height:1.15;color:var(--text-3);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (min-width:620px){.bpk-tile small{display:block}}
/* Hebräische und Griechische Schriften farblich getrennt, innerhalb davon abgestuft */
.bpk-grp[data-part="he"] .bpk-tile{border-color:color-mix(in srgb,var(--bib-he) 24%,var(--border))}
.bpk-grp[data-part="he"] .bpk-tile:hover{border-color:var(--bib-he)}
.bpk-grp[data-part="he"] .bpk-tile[data-tier="1"]{background:color-mix(in srgb,var(--bib-he)  7%,var(--surface))}
.bpk-grp[data-part="he"] .bpk-tile[data-tier="2"]{background:color-mix(in srgb,var(--bib-he) 13%,var(--surface))}
.bpk-grp[data-part="he"] .bpk-tile[data-tier="3"]{background:color-mix(in srgb,var(--bib-he) 19%,var(--surface))}
.bpk-grp[data-part="he"] .bpk-tile[data-tier="4"]{background:color-mix(in srgb,var(--bib-he) 25%,var(--surface))}
.bpk-grp[data-part="he"] .bpk-tile[data-tier="5"]{background:color-mix(in srgb,var(--bib-he) 31%,var(--surface))}
.bpk-grp[data-part="gr"] .bpk-tile{border-color:color-mix(in srgb,var(--bib-gr) 24%,var(--border))}
.bpk-grp[data-part="gr"] .bpk-tile:hover{border-color:var(--bib-gr)}
.bpk-grp[data-part="gr"] .bpk-tile[data-tier="1"]{background:color-mix(in srgb,var(--bib-gr)  8%,var(--surface))}
.bpk-grp[data-part="gr"] .bpk-tile[data-tier="2"]{background:color-mix(in srgb,var(--bib-gr) 17%,var(--surface))}
.bpk-grp[data-part="gr"] .bpk-tile[data-tier="3"]{background:color-mix(in srgb,var(--bib-gr) 26%,var(--surface))}
.bpk-grp[data-part="ch"] .bpk-tile{background:color-mix(in srgb,var(--bib-ch) 15%,var(--surface));border-color:color-mix(in srgb,var(--bib-ch) 26%,var(--border))}
.bpk-grp[data-part="ch"] .bpk-tile:hover{border-color:var(--bib-ch)}
.bpk-grp[data-part="v"] .bpk-tile{background:color-mix(in srgb,var(--bib-v) 14%,var(--surface));border-color:color-mix(in srgb,var(--bib-v) 24%,var(--border))}
.bpk-grp[data-part="v"] .bpk-tile:hover{border-color:var(--bib-v)}
.bpk-tile.cur{outline:2px solid var(--accent);outline-offset:-2px}
.bpk-tile.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.bpk-tile.in{background:var(--accent-soft-2);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.bpk-chips{display:flex;flex-wrap:wrap;gap:6px}
.bpk-range{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;padding:7px 12px;
  border:1px solid var(--accent);border-radius:var(--r-sm);background:var(--accent-soft);color:var(--accent);font-size:.82rem;font-weight:700}
.bpk-range .btn{margin-left:auto}

.bpk-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:10px;margin-top:4px;border-top:1px solid var(--border)}
.bpk-sel{flex:1 1 150px;min-width:0;font-size:.95rem;font-weight:700;color:var(--text)}
.bpk-sel small{display:block;font-size:.72rem;font-weight:600;color:var(--text-3)}
.bpk-tb{margin-top:10px}

/* Knopf neben einem Suchfeld */
.bpk-row{display:flex;align-items:center;gap:6px}
.bpk-row>:first-child{flex:1 1 auto;min-width:0}
.bpk-open{flex:none}
/* Handy: der Fuß mit „Öffnen“ muss sichtbar bleiben, auch wenn das Gitter lang ist */
@media (max-width:640px){
  .bpk-body{max-height:42vh;padding-top:10px}
  .bpk-moderow{padding:6px 0}
  .bpk-foot{position:sticky;bottom:0;background:var(--surface);padding-bottom:2px}
  .bpk-foot .btn{flex:1 1 auto}
}

/* ─── JW Library: Markierungen in den Farben von JW Library, Notiz-Symbole, Notizen ─── */
:root{--jw1:rgba(255,222,0,.42);--jw2:rgba(118,205,56,.38);--jw3:rgba(64,170,255,.34);--jw4:rgba(255,86,138,.32);--jw5:rgba(255,150,20,.40);--jw6:rgba(156,86,228,.30);
  --jw1s:#e8c400;--jw2s:#5fb832;--jw3s:#3a9ae8;--jw4s:#ec4f82;--jw5s:#f28c12;--jw6s:#9457d6}
[data-theme="dark"],[data-theme="oled"]{--jw1:rgba(255,222,0,.30);--jw2:rgba(118,205,56,.30);--jw3:rgba(64,170,255,.30);--jw4:rgba(255,86,138,.30);--jw5:rgba(255,150,20,.30);--jw6:rgba(176,110,255,.32)}
mark.jwl{color:inherit;border-radius:2px;padding:.02em 0;-webkit-box-decoration-break:clone;box-decoration-break:clone;background:var(--jw1)}
mark.jwl.c2{background:var(--jw2)}mark.jwl.c3{background:var(--jw3)}mark.jwl.c4{background:var(--jw4)}mark.jwl.c5{background:var(--jw5)}mark.jwl.c6{background:var(--jw6)}
.jwl-n{display:inline-grid;place-items:center;width:1.45em;height:1.45em;margin:0 .15em 0 .3em;vertical-align:-.2em;border:0;border-radius:5px;padding:0;cursor:pointer;background:var(--surface-3);color:var(--text-2);font-size:.9em;position:relative;-webkit-tap-highlight-color:transparent}
.jwl-n .ico{width:.95em;height:.95em}
.jwl-n::after{content:'';position:absolute;inset:-7px -5px}
.jwl-n.c1{box-shadow:inset 0 -3px 0 var(--jw1s)}.jwl-n.c2{box-shadow:inset 0 -3px 0 var(--jw2s)}.jwl-n.c3{box-shadow:inset 0 -3px 0 var(--jw3s)}.jwl-n.c4{box-shadow:inset 0 -3px 0 var(--jw4s)}.jwl-n.c5{box-shadow:inset 0 -3px 0 var(--jw5s)}.jwl-n.c6{box-shadow:inset 0 -3px 0 var(--jw6s)}
.jwl-n:hover{background:var(--accent-soft);color:var(--accent)}
.jwl-dot{display:inline-block;width:.8em;height:.8em;border-radius:50%;background:var(--text-3);margin-right:.45em;flex:none}
.jwl-dot.c1{background:var(--jw1s)}.jwl-dot.c2{background:var(--jw2s)}.jwl-dot.c3{background:var(--jw3s)}.jwl-dot.c4{background:var(--jw4s)}.jwl-dot.c5{background:var(--jw5s)}.jwl-dot.c6{background:var(--jw6s)}
.jwl-pop{max-width:min(520px,92vw)}
.jwl-nh{display:flex;align-items:center;font-size:1rem;margin-bottom:2px}
.jwl-loc{display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:2px 0;color:var(--accent);cursor:pointer;text-align:left}
.jwl-loc:hover{text-decoration:underline}
.jwl-body{white-space:pre-line;font-family:var(--font-editor);line-height:1.55;margin-top:6px;max-height:48vh;overflow:auto;overflow-wrap:anywhere}
.jwl-body.clamp{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;max-height:none}
.jwl-tags{gap:4px;margin-top:8px}
.jwl-tag .ico{width:11px;height:11px}
.jwl-card{border:1px solid var(--border);border-left:4px solid var(--text-3);border-radius:var(--r-sm);padding:9px 11px;margin-bottom:8px;background:var(--surface)}
.jwl-card.c1{border-left-color:var(--jw1s)}.jwl-card.c2{border-left-color:var(--jw2s)}.jwl-card.c3{border-left-color:var(--jw3s)}.jwl-card.c4{border-left-color:var(--jw4s)}.jwl-card.c5{border-left-color:var(--jw5s)}.jwl-card.c6{border-left-color:var(--jw6s)}
.jwl-info,.jwl-docnotes{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--text-2);background:var(--surface-2);border-radius:var(--r-sm);padding:6px 10px;margin-bottom:10px}
.jwl-stat{padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-2);margin-bottom:10px;line-height:1.6}
.jwl-folder{margin:-4px 0 10px;padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2)}
.jwl-folder code{font-size:.82rem;word-break:break-all}
.jwl-folder ul{margin:6px 0 0;padding-left:1.2em}
.prompter .jwl-n,.pgv .jwl-n{display:none}

/* ─── Studienbibel: Markierung an Versnummern und Studienfenster ─── */
:root{--sn-dot:#2f78c4}
[data-theme="dark"]{--sn-dot:#6aa8ec}
/* Jede Versnummer ist antippbar; ein blauer Punkt zeigt Studienanmerkungen */
sup.sn-tap{cursor:pointer;position:relative;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
sup.sn-tap:not(.gd-ring)::after{content:'';position:absolute;inset:-9px -6px}
sup.sn-tap:not(.gd-ring):hover{color:var(--accent)}
sup.sn-has::before{content:'';position:absolute;top:-.12em;right:-.34em;width:.42em;height:.42em;border-radius:50%;background:var(--sn-dot);box-shadow:0 0 0 1.5px var(--surface,#fff);pointer-events:none}
sup.gd-ring.sn-has::before{top:-.1em;right:-.1em}
.prompter sup.sn-has::before,.pgv sup.sn-has::before{display:none}

/* Fenster */
.st{font-size:calc(1rem * var(--z-study,1))}
.st-nav{display:flex;align-items:center;gap:6px;margin:-4px 0 10px;flex-wrap:wrap}
.st-where{display:flex;align-items:center;gap:4px;font-size:1.02rem}
.st-where b{color:var(--accent)}
.st-sp{flex:1}
.st-verse{font-size:1.08em;line-height:1.6;padding:10px 14px;border-radius:12px;background:var(--surface-2,rgba(0,0,0,.035));margin-bottom:12px}
.st-verse sup{color:var(--accent);font-weight:700;margin-right:4px}
.st-tabs{margin-bottom:10px;flex-wrap:wrap}
.st-tabs i{font-style:normal;opacity:.65;font-size:.86em;margin-left:2px}
.st-h{line-height:1.62}
.st-h p{margin:0 0 .7em}
.st-h a.sb,.st-h a.sn,.st-h a.sd{color:var(--accent);cursor:pointer;text-decoration:none;border-bottom:1px dotted currentColor}
.st-h a.sn{font-style:normal}
.st-h u{text-decoration:none;border-bottom:1px solid currentColor}
.st-note{padding:10px 12px;border:1px solid var(--border);border-left:3px solid var(--sn-dot);border-radius:10px;margin-bottom:10px;background:var(--surface)}
.st-note .st-h{font-size:.97em}
.st-nref{font-size:.82em;margin-bottom:4px}
.st-a{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.st-vh{margin:12px 0 6px;font-size:.9em}
.st-vh:first-child{margin-top:0}
.st-go{color:var(--accent);cursor:pointer;text-decoration:none}
.st-go:hover{text-decoration:underline}
.st-fn{padding:8px 0;border-bottom:1px solid var(--border);font-size:.95em;line-height:1.55}
.st-fn:last-child{border-bottom:0}
.st-fn .st-h p{display:inline;margin:0}
.st-xg{margin-bottom:12px}
.st-xh{display:flex;align-items:center;gap:8px;font-size:.9em;margin-bottom:4px}
.st-mk{display:inline-flex;align-items:center;justify-content:center;min-width:1.5em;height:1.5em;padding:0 .3em;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.9em}
.st-xr{padding:6px 0 6px 12px;border-left:2px solid var(--border);margin-left:8px}
.st-xr-h{display:flex;align-items:center;gap:8px;justify-content:space-between;font-weight:600;font-size:.92em}
.st-xt{font-size:.94em;line-height:1.5;color:var(--text-2)}
.st-media{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.st-mt{display:flex;flex-direction:column;gap:6px;padding:0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);cursor:pointer;text-align:left;font:inherit;color:inherit}
.st-mt img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:var(--surface-2,#eee)}
.st-mt span:last-child{padding:0 8px 8px;font-size:.84em;line-height:1.35}
.st-vid{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#1d2733;color:#fff}
.st-vid .ico{width:36px;height:36px}
.st-vid.big{aspect-ratio:16/9;border-radius:10px}
.st-mv img{max-width:100%;max-height:62vh;display:block;margin:0 auto;border-radius:10px}
.st-doc{font-size:1em}
.st-doc h1{font-size:1.35em;margin:0 0 .6em}
.st-doc h2,.st-doc h3{font-size:1.1em;margin:1em 0 .4em}
.st-doc table{border-collapse:collapse;width:100%;font-size:.9em;margin:.6em 0}
.st-doc td,.st-doc th{border:1px solid var(--border);padding:4px 6px;vertical-align:top}
.st-doc ul{padding-left:1.2em}
.st-docs{display:flex;flex-direction:column;gap:2px}
.st-dl{text-align:left;background:none;border:0;padding:7px 8px;border-radius:8px;font:inherit;color:var(--accent);cursor:pointer}
.st-dl:hover{background:var(--surface-2,rgba(0,0,0,.04))}
.st-book .ch-grid button{position:relative}
.st-book .ch-grid sup{font-size:.62em;color:var(--sn-dot);margin-left:1px}
.st-p .st-note,.st-res .st-note{font-size:calc(.95rem * var(--z-study,1))}
.st-p .st-note{padding:8px 10px}

/* ─── Hintergrund scrollt nicht mit, solange ein Fenster offen ist ─── */
html.scroll-lock,html.scroll-lock body{overflow:hidden!important;overscroll-behavior:none}
.overlay{overscroll-behavior:contain}
.modal-b,.popover,.popover .ptext,.vpop .verse-card,.menu,.palette .res,.jwr-body,.st-main,.scl-list,.scl-topic,.per-src-t{overscroll-behavior:contain}

/* ─── Schriftgröße: Artikel-Leser und Studienfenster samt Leitfaden-Karten ─── */
.jwr-body{font-size:calc(1.03rem * var(--z-reader,1))}
.st .gd-x{font-size:.95em}
.st .gd-h{font-size:.88em}
.st .gd-vh{font-size:.9em}
.st .small{font-size:.86em}

/* ─── Quelle im Wortlaut ─── */
.per-src{font-size:calc(1rem * var(--z-study,1))}
.per-src-h{margin:0 26px 6px 0;line-height:1.35}
.per-src-t{max-height:52vh;overflow:auto;line-height:1.6;font-size:.95em;padding:8px 10px;border-radius:10px;background:var(--surface-2)}
.per-src-t p{margin:0 0 .6em}
.week-srcs{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.week-src{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dt-quote{margin:14px 0 4px;border:1px solid var(--border);border-radius:12px;padding:8px 12px;background:var(--surface-2)}
.dt-quote summary{cursor:pointer;font-weight:600;font-size:.86em;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.dt-quote div{margin-top:8px;font-size:.95em;line-height:1.6}
.dt-quote p{margin:0 0 .6em}

/* ─── Worterklärungen ─── */
.per-gl{font-size:calc(1rem * var(--z-study,1))}
.per-gl-card{padding:10px 12px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;margin-bottom:12px}
.per-gl-card h3{margin:0 0 6px;font-size:1.05em}
.per-gl-card a.sb,.scl-body a.sb{color:var(--accent);text-decoration:none;border-bottom:1px dotted currentColor;cursor:pointer}
.per-gl-terms{display:flex;flex-wrap:wrap;gap:4px}

/* ─── Bibelverse für das Leben als Christ ─── */
.scl-wrap{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:14px;align-items:start;font-size:calc(1rem * var(--z-study,1))}
.scl-list{display:flex;flex-direction:column;gap:2px;max-height:70vh;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:4px;background:var(--surface)}
.scl-t{text-align:left;background:none;border:0;border-radius:8px;padding:7px 9px;font:inherit;font-size:.92em;color:var(--text);cursor:pointer}
.scl-t i{display:block;font-style:normal;font-size:.8em;color:var(--text-3)}
.scl-t:hover{background:var(--surface-2)}
.scl-t.on{background:var(--accent-soft);color:var(--accent);font-weight:600}
.scl-topic{min-width:0}
.scl-h{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.scl-h b{font-size:1.15em}
.scl-body{line-height:1.6}
.scl-body h1{display:none}
.scl-body h2{font-size:1em;margin:1em 0 .3em;font-family:var(--font-ui)}
.scl-body p{margin:0 0 .5em}
.scl-body ul{list-style:none;padding-left:.8em;margin:.3em 0 .6em}
.scl-body ul ul{padding-left:.6em}
.scl-body div{font-size:.95em}
.scl-add{border:1px solid var(--border-2);background:var(--surface);color:var(--accent);border-radius:999px;width:1.5em;height:1.5em;line-height:1.3em;padding:0;margin:0 .2em;font-weight:700;cursor:pointer;font-size:.8em;vertical-align:middle}
.ed-panel .scl-wrap{grid-template-columns:1fr}
.ed-panel .scl-list{max-height:30vh}
@media (max-width:760px){.scl-wrap{grid-template-columns:1fr}.scl-list{max-height:34vh}}

/* ─── Wiedergabe: eingefügte feste Schriftgrößen gelten nicht (alles gleich groß wie der Fließtext) ─── */
.blk-text [style*="font-size"],.pt-card .c-text [style*="font-size"],.pt-text [style*="font-size"],.pgv-content [style*="font-size"],.off-read [style*="font-size"]{font-size:inherit!important;line-height:inherit!important}
.blk-text [style*="font-family"],.pt-card .c-text [style*="font-family"],.pt-text [style*="font-family"],.pgv-content [style*="font-family"]{font-family:inherit!important}
.blk-text font[size],.pt-card .c-text font[size],.pt-text font[size],.pgv-content font[size]{font-size:inherit!important}
/* Fußzeile der Seitenansicht: Datum links, Thema in der Mitte (kürzt sich), Seitenzahl rechts */
.pgv-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);gap:calc(14 * var(--u));align-items:baseline}
.pgv-foot span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.pgv-foot .pf-c{text-align:center}
.pgv-foot .pf-r{text-align:right}
/* Neu in Version … */
.chg{border:1px solid var(--border);border-radius:12px;padding:8px 12px;margin-bottom:8px;background:var(--surface)}
.chg summary{cursor:pointer;line-height:1.4}
.chg ul{margin:8px 0 2px;padding-left:1.2em;line-height:1.55;font-size:.92rem}
.chg li{margin-bottom:.3em}
/* Bildlaufleiste reserviert Platz – beim Sperren springt nichts */
@media (hover:hover) and (pointer:fine){html{scrollbar-gutter:stable}}

/* ════════════════════════════════════════════════════════════════════════
   Geladene Inhalte: einheitlich und gut lesbar formatiert – Artikel-Leser,
   Publikationen, Tagestext, Studienbibel, Worterklärungen, Quellen, Bibel.
   Schrift, Zeilenabstand, Breite, Farbe und Blocksatz kommen aus ReadLook.
   ════════════════════════════════════════════════════════════════════════ */
:root{--font-read:var(--font-editor);--read-lh:1.7;--read-w:72ch;--read-h:var(--accent)}
:root[data-readcolor="0"]{--read-h:var(--text)}

.reader,.dt-art,.st-h,.st-verse,.st-xt,.gd-x,.per-src-t,.per-gl-card,.scl-body,.bible-reader,.verse-card,.popover .ptext,.dt-quote div,.rl-demo{font-family:var(--font-read)}
.reader{line-height:var(--read-lh)}
.dt-art,.bible-reader,.scl-body,.st-h,.per-src-t,.per-gl-card,.gd-x,.verse-card,.popover .ptext{line-height:calc(var(--read-lh) - .08)}
:root[data-readjustify="1"] :is(.reader,.dt-body,.st-h,.per-src-t,.scl-body,.per-gl-card) p{text-align:justify;-webkit-hyphens:auto;hyphens:auto}
:root[data-readjustify="1"] .bible-reader{text-align:justify;-webkit-hyphens:auto;hyphens:auto}

/* ─── Artikel-Leser ─── */
.jwr-body.reader{padding:22px max(22px,calc((100% - var(--read-w)) / 2)) 48px}
.bible-reader{max-width:var(--read-w)}
.dt-art{max-width:min(var(--read-w),100%)}
.reader h1{font-family:var(--font-read);font-weight:700;font-size:1.6em;line-height:1.22;letter-spacing:-.005em;color:var(--read-h);margin:.1em 0 .7em;padding-bottom:.4em;border-bottom:2px solid rgba(var(--accent-rgb),.28)}
:root[data-readcolor="0"] .reader h1{border-bottom-color:var(--border)}
.reader h2{font-family:var(--font-ui);font-size:1.08em;font-weight:750;line-height:1.35;color:var(--read-h);margin:1.7em 0 .6em;padding-left:.7em;border-left:3px solid rgba(var(--accent-rgb),.55)}
:root[data-readcolor="0"] .reader h2{border-left-color:var(--border-2,var(--border))}
.reader h3{font-family:var(--font-ui);font-size:.97em;font-weight:700;line-height:1.35;color:var(--read-h);margin:1.35em 0 .45em}
.reader h4{font-family:var(--font-ui);font-size:.9em;font-weight:700;margin:1.2em 0 .4em;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}
.reader p{margin:0 0 .95em}
.reader strong,.reader b{font-weight:700}
.reader em,.reader i{font-style:italic}
.reader a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(var(--accent-rgb),.35)}
.reader a:hover{border-bottom-color:currentColor}
.reader a[data-bible]{font-weight:600;border-bottom-style:dotted}
.reader .pnum{display:inline-flex;align-items:center;justify-content:center;min-width:1.55em;height:1.55em;padding:0 .3em;margin-right:.35em;border-radius:.5em;background:rgba(var(--accent-rgb),.12);color:var(--accent);font-family:var(--font-ui);font-size:.68em;font-weight:800;vertical-align:.18em;line-height:1}
:root[data-readcolor="0"] .reader .pnum{background:var(--surface-2);color:var(--text-2)}
.reader p.qu{font-family:var(--font-ui);font-size:.88em;font-weight:600;line-height:1.5;color:var(--text);background:rgba(var(--accent-rgb),.07);border-left:3px solid var(--accent);padding:8px 12px;border-radius:0 10px 10px 0;margin:1.1em 0}
:root[data-readcolor="0"] .reader p.qu{background:var(--surface-2);border-left-color:var(--border-2,var(--border))}
.reader .box{background:rgba(var(--accent-rgb),.045);border:1px solid rgba(var(--accent-rgb),.18);border-radius:14px;padding:14px 18px 6px;margin:1.3em 0}
.reader .box h2,.reader .box h3{margin-top:.2em;border-left:0;padding-left:0}
:root[data-readcolor="0"] .reader .box{background:var(--surface-2);border-color:var(--border)}
.reader .cap{font-family:var(--font-ui);font-size:.8em;line-height:1.45;color:var(--text-3);font-style:normal;border-left:3px solid var(--border);padding:2px 0 2px 10px;margin:.4em 0 1.1em}
.reader blockquote{margin:1em 0;padding:8px 16px;border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 10px 10px 0;color:var(--text)}
.reader ul,.reader ol{padding-left:1.5em;margin:0 0 1em}
.reader li{margin:0 0 .35em}
.reader li::marker{color:var(--accent)}
.reader img{max-width:100%;height:auto;border-radius:10px}
.reader hr{border:0;border-top:1px solid var(--border);margin:1.6em 0}

/* ─── Inhaltsverzeichnis einer Publikation ─── */
.reader .toc{display:flex;flex-direction:column;gap:2px;font-family:var(--font-ui);line-height:1.4}
.reader .toc-pages{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.reader .toc-page{padding:6px 13px;border-radius:999px;border:1px solid var(--border);font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--text-2)}
.reader .toc-page:hover{border-color:var(--accent);color:var(--accent)}
.reader .toc-page.on{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.reader .toc-g{font-family:var(--font-ui);font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--read-h);margin:18px 0 4px;padding:0 12px;border:0}
.reader .toc-i{display:flex;align-items:center;gap:12px;padding:9px 38px 9px 12px;border-radius:12px;border:1px solid transparent;color:var(--text);position:relative}
.reader .toc-i img{width:52px;height:52px;object-fit:cover;border-radius:9px;flex:none;background:var(--surface-2);box-shadow:0 1px 3px rgba(0,0,0,.14)}
.reader .toc-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.reader .toc-i:hover{background:var(--surface-2);border-color:var(--border)}
.reader .toc-i::after{content:'';position:absolute;right:14px;top:50%;width:7px;height:7px;border-right:2px solid var(--text-3);border-top:2px solid var(--text-3);transform:translateY(-50%) rotate(45deg)}
.reader .toc-i small{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.reader .toc-i b{font-weight:600;font-size:.95rem}
.reader .toc-i span{font-size:.78rem;color:var(--text-3)}

/* ─── Studienbibel, Worterklärungen, Themen, Tagestext ─── */
.st-h h1,.st-h h2,.st-h h3,.per-gl-card h3,.scl-body h2,.gd-x h3{color:var(--read-h)}
.scl-h b,.per-gl-card h3{font-family:var(--font-ui)}
.dt-body p:first-child::first-letter{color:var(--read-h)}

/* ─── „Aa“: Darstellung wählen ─── */
.rl-btn{font-weight:700;letter-spacing:.01em;min-width:32px;justify-content:center;font-family:Georgia,serif}
.rl{display:flex;flex-direction:column;gap:6px;min-width:min(300px,78vw);font-family:var(--font-ui)}
.rl-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px}
.rl-h .small{flex-basis:100%;font-size:.75rem}
.rl-l{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-top:6px}
.rl-seg{display:flex;gap:3px;padding:3px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border)}
.rl-seg button{flex:1;min-width:0;border:0;background:none;border-radius:7px;padding:6px 6px;font:inherit;font-size:.82rem;color:var(--text-2);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rl-seg button:hover{color:var(--text)}
.rl-seg button.on{background:var(--surface);color:var(--accent);font-weight:700;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.rl-size{align-items:center}
.rl-size button{flex:none;min-width:44px;font-weight:700}
.rl-zv{flex:1;text-align:center;font-size:.82rem;font-weight:600;color:var(--text-2)}
.rl-sw{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.86rem;padding:4px 2px;cursor:pointer}
.rl-sw input{width:18px;height:18px;accent-color:var(--accent)}
.rl-reset{align-self:flex-start;margin-top:4px}
.rl-set{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start}
.rl-demo{border:1px solid var(--border);border-radius:14px;padding:16px 20px;background:var(--surface);font-size:1rem}
.rl-demo h2{margin-top:0}
@media (max-width:760px){.rl-set{grid-template-columns:1fr}}

/* ─── Bibelverse für das Leben als Christ: klare Gliederung ─── */
.scl-body > header + div > p:first-child,.scl-body > div > p:first-child{font-size:1.05em;margin-bottom:.8em}
.scl-body li > p:first-child > strong:only-child{display:block;font-family:var(--font-ui);font-size:.74em;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--read-h);margin:1em 0 .35em}
.scl-body ul ul{border-left:2px solid rgba(var(--accent-rgb),.22);padding-left:.9em;margin-left:.15em}
:root[data-readcolor="0"] .scl-body ul ul{border-left-color:var(--border)}
.scl-body ul ul li{margin:0 0 .45em}
.scl-body ul ul p{margin:0}
.scl-body div div{background:var(--surface-2);border-radius:12px;padding:6px 14px 8px;margin:.4em 0 1em}
.scl-h b{color:var(--read-h)}

/* ─── Worterklärungen ─── */
.per-gl-card h3{font-size:1.1em;letter-spacing:.005em}
.per-gl-card p{margin:0 0 .6em}

/* ─── Antwortfelder: eigene Antwort aus JW Library, sonst dezenter Platzhalter ─── */
.reader .ans{margin:-.3em 0 1.1em;padding:5px 12px;border:1px dashed var(--border);border-radius:10px;font-family:var(--font-ui);font-size:.78em;color:var(--text-3)}
.reader .ans.own{border:1px solid rgba(47,120,196,.3);border-left:4px solid var(--sn-dot,#2f78c4);background:rgba(47,120,196,.08);color:var(--text);font-size:.95em;padding:8px 14px}
.ans-t{font-family:var(--font-read);line-height:1.55}
.rl-seg[data-k="readFont"]{display:grid;grid-template-columns:1fr 1fr}
.zgrp{display:inline-flex;align-items:center;gap:2px;flex:none}
/* Fußnotenmarke */
.reader sup.fnm{font-family:var(--font-ui);font-size:.62em;font-weight:700;color:var(--accent);margin:0 .08em;line-height:0}
/* Bilder im Artikel */
.reader .rd-fig{margin:1.3em 0}
.reader .rd-fig img{display:block;width:100%;height:auto;border-radius:12px;background:var(--surface-2);margin:0 0 .5em}
.reader .rd-fig img + img{margin-top:.6em}
.reader .rd-fig figcaption p{margin:0}

/* ════════════════════════════════════════════════════════════════════════
   Recherche: Liste und Leser passen genau in die sichtbare Höhe (--rs-h aus
   Research.fit). Gescrollt wird in der Liste bzw. im Leser, nicht die Seite.
   Ansichten mit eigener Liste und Detailansicht nutzen die ganze Breite.
   ════════════════════════════════════════════════════════════════════════ */
.research{--rs-h:calc(100vh - 240px);align-items:stretch}
.research .rs-left{display:flex;flex-direction:column;height:var(--rs-h);min-height:0;min-width:0}
.research .rs-left > *{flex:none}
.research .rs-left :is(.res,.gd-res,.st-res,.jwl-list,.scl-wrap){flex:1 1 auto;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}
.research .rs-left > .card:only-child{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.research .rs-left > .empty{margin:auto 0}
.research .rs-right{height:var(--rs-h);display:flex;flex-direction:column;overflow:hidden;min-width:0}
.research .rs-right > .jwr{flex:1 1 auto;min-height:0}
.research .rs-right .jwr-body{flex:1 1 auto;min-height:0;max-height:none}
.research .rs-right > .empty{margin:auto}

/* Volle Breite: Studienleitfaden, Studienbibel, Leben als Christ, JW Library */
.research.solo{grid-template-columns:minmax(0,1fr)}
.research.solo .rs-right{display:none}
.research .scl-wrap{align-items:stretch;overflow:hidden}
.research .scl-list,.research .scl-topic{max-height:none;min-height:0;overflow:auto;overscroll-behavior:contain}
.research.solo .scl-wrap{grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:18px}
.research.solo .scl-topic{padding:4px 6px 24px 0}
.research.solo .scl-body,.research.solo .st-res,.research.solo .gd-res{max-width:none}
.research.solo .scl-topic > *{max-width:var(--read-w,72ch)}

/* Schmale Bildschirme: eine Spalte, der Leser öffnet sich als eigenes Fenster */
@media (max-width:1024px){
  .research{grid-template-columns:minmax(0,1fr)!important}
  .research .rs-right{display:none}
}
@media (max-width:720px){
  .rs-head p{display:none}
  .rs-head h2{font-size:1.5rem}
  .research{--rs-h:calc(100vh - 200px)}
  .research.solo .scl-wrap{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,38%) minmax(0,1fr);gap:10px}
  .research.solo .scl-list{max-height:none}
}
/* Ziel für „Als Quelle in den Punkt“ */
.jwr-tgt{display:inline-flex;align-items:center;gap:5px;color:var(--text-2);min-width:0}
.jwr-tgt select{max-width:min(260px,46vw);height:28px;padding:0 26px 0 8px;font-size:.8rem}
/* ─── Publikationen: Bibliothek zum Durchblättern ─── */
.lib-crumbs{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 0 8px;min-height:30px}
.lib-crumbs::-webkit-scrollbar{display:none}
.lib-c{border:0;background:none;padding:4px 7px;border-radius:8px;font:inherit;font-size:.82rem;color:var(--text-2);cursor:pointer;white-space:nowrap}
.lib-c:hover{background:var(--surface-2)}
.lib-c.on{color:var(--text);font-weight:700}
.lib-g{margin:12px 8px 4px}
.lib-pages{display:flex;flex-wrap:wrap;gap:4px;padding:4px 4px 8px}
.lib-i{display:flex;align-items:center;gap:11px;padding:7px 9px;border-radius:12px;cursor:pointer;border:1px solid transparent}
.lib-i:hover{background:var(--surface-2);border-color:var(--border)}
.lib-i.on{background:var(--accent-soft)}
.lib-i img{width:44px;height:44px;object-fit:cover;border-radius:8px;flex:none;background:var(--surface-2);box-shadow:0 1px 3px rgba(0,0,0,.14)}
.lib-ic{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:var(--surface-2);color:var(--text-3);flex:none}
.lib-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.lib-tx small{font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--accent)}
.lib-tx b{font-weight:600;font-size:.92rem;line-height:1.3}
.lib-tx span{font-size:.76rem;color:var(--text-3)}
.lib-go{color:var(--text-3);flex:none}
/* ─── Suche im Leser ─── */
.jwr-find{display:flex;flex-direction:column;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--surface-2)}
.jwr-find[hidden]{display:none}
.jwr-frow{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.jwr-frow .input{height:34px}
.jwr-frow .select{width:auto;max-width:260px}
.jwr-fnav{display:inline-flex;align-items:center;gap:2px}
.jwr-find:not(.local) .jwr-fnav{display:none}
.jwr-fc{min-width:56px;text-align:center}
.jwr-fopt{display:flex;gap:12px;flex-wrap:wrap;color:var(--text-2)}
.jwr-fopt label{display:inline-flex;align-items:center;gap:5px}
.jwr-fopt .select{width:auto;height:28px;font-size:.8rem}
.jwr-find.local .jwr-fopt{display:none}
.jwr-fres{max-height:38vh;overflow:auto;overscroll-behavior:contain}
.jwr-fres:empty{display:none}
.jwr-fi{padding:8px 10px;border-radius:10px;cursor:pointer;border:1px solid transparent}
.jwr-fi:hover{background:var(--surface);border-color:var(--border)}
.jwr-fi.on{background:var(--accent-soft)}
.jwr-fi b{display:block;font-size:.9rem}
.jwr-fi span{display:block;font-size:.74rem;color:var(--text-3)}
.jwr-fi p{margin:3px 0 0;font-size:.8rem;color:var(--text-2);line-height:1.45}
.reader mark.find{background:#ffe36e;color:inherit;border-radius:3px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.reader mark.find.cur{background:#ff9f43;box-shadow:0 0 0 2px rgba(255,140,40,.45)}
[data-theme="dark"] .reader mark.find,[data-theme="oled"] .reader mark.find{background:#8a6d00;color:#fff}

/* ─── Neu auf jw.org ───────────────────────────────────────────────────── */
.nw-head{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.nw-head .btn.spin .ico{animation:ptrspin .8s linear infinite}
.nw-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.nw-bar .seg button .ico{margin-right:4px}
.nw-ts{margin-left:auto}
.nw-cats{gap:4px;margin-bottom:8px;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.nw-cats .chip{flex:0 0 auto}
.nw-cats:empty{display:none}
.nw-day{position:sticky;top:0;z-index:1;font:700 .7rem/1 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:12px 10px 6px;background:var(--surface)}
.nw-i{display:flex;gap:12px;align-items:flex-start;padding:9px 10px;border-radius:var(--r);cursor:pointer;border:1px solid transparent;outline:none}
.nw-i:hover,.nw-i:focus-visible{background:var(--surface-2);border-color:var(--border)}
.nw-i.on{background:var(--accent-soft);border-color:transparent}
.nw-th{position:relative;flex:0 0 auto;width:72px;height:72px;border-radius:12px;overflow:hidden;background:var(--surface-3);display:grid;place-items:center;color:var(--text-3)}
.nw-i.v .nw-th{width:112px;height:63px;border-radius:10px}
.nw-th img{width:100%;height:100%;object-fit:cover;display:block}
.nw-pl{position:absolute;left:6px;bottom:6px;width:24px;height:24px;border-radius:50%;background:rgba(var(--accent-rgb),.95);color:#fff;display:grid;place-items:center}
.nw-pl .ico{width:12px;height:12px;margin-left:2px}
.nw-dur{position:absolute;right:5px;bottom:5px;font:600 .66rem/1 var(--font-ui);color:#fff;background:rgba(0,0,0,.66);padding:3px 5px;border-radius:5px;font-variant-numeric:tabular-nums}
.nw-b{min-width:0;display:flex;flex-direction:column;gap:3px}
.nw-m{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;font:500 .72rem/1.2 var(--font-ui);color:var(--text-3)}
.nw-cat{color:var(--accent);font-weight:650;text-transform:uppercase;letter-spacing:.03em}
.nw-b b{font-size:.92rem;line-height:1.35;color:var(--text)}
.nw-d{font-size:.8rem;line-height:1.45;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nw-v{display:flex;flex-direction:column;height:100%;overflow:auto}
.nw-vp{position:relative;background:#0e1116;aspect-ratio:16/9;display:grid;place-items:center;flex:0 0 auto}
.nw-vp img{width:100%;height:100%;object-fit:cover;display:block}
.nw-vp video{width:100%;height:100%;background:#000;display:block}
.nw-vp .rd-vbtn{top:50%}
.nw-vp .rd-verr{position:absolute;inset:0;justify-content:center}
.nw-vb{padding:16px 20px 20px;display:flex;flex-direction:column;gap:10px}
.nw-vb h3{margin:0;font-size:1.2rem;line-height:1.3}
.nw-vb p{margin:0;color:var(--text-2);line-height:1.55;font-size:.92rem}
@media (max-width:640px){.nw-th{width:60px;height:60px}.nw-i.v .nw-th{width:96px;height:54px}.nw-ts{width:100%;margin-left:0}}

/* ════════════════════════════════════════════════════════════════════════
   Einsichten über die Heilige Schrift: Liste mit Suche und A–Z,
   Hinweis beim Markieren, Nachschlage-Fenster
   ════════════════════════════════════════════════════════════════════════ */
.it-view{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}
.research .rs-left > .it-view{flex:1 1 auto;min-height:0}
.it-view > *{flex:none}
.it-q{margin-bottom:8px}
.it-az{display:flex;flex-wrap:wrap;gap:3px;margin:0 0 8px}
.it-az[hidden]{display:none}
.it-l{min-width:30px;height:30px;padding:0 6px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:700 .8rem var(--font-ui);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px}
.it-l:hover{border-color:var(--accent);color:var(--accent)}
.it-l.on{background:var(--accent);border-color:var(--accent);color:#fff}
.it-l.wide{padding:0 10px}
.it-info{margin:0 2px 6px;min-height:1em}
.it-info:empty{display:none}
.research .rs-left .it-list,.it-view .it-list{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px}
.it-view.compact .it-list{max-height:none;overflow:visible;padding:0}
.it-more{text-align:center;margin-top:6px}
.it-more:empty{display:none}
.it-i{padding:9px 11px;border-radius:12px;cursor:pointer;border:1px solid transparent}
.it-i + .it-i{margin-top:2px}
.it-i:hover{background:var(--surface-2);border-color:var(--border)}
.it-i.on{background:var(--accent-soft)}
.it-t{display:flex;align-items:baseline;gap:8px}
.it-t b{font-family:var(--font-read);font-size:1.02rem;font-weight:700;color:var(--read-h,var(--accent));letter-spacing:.005em}
.it-i:not(.kw) .it-t b{color:var(--text)}
.it-vol{margin-left:auto;flex:none;font:700 .64rem var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--border);border-radius:6px;padding:1px 6px}
.it-p{font-size:.78rem;color:var(--text-3);font-style:italic;margin-top:1px}
.it-s{font-family:var(--font-read);font-size:.86rem;line-height:1.5;color:var(--text-2);margin-top:3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.it-s mark{background:rgba(255,214,70,.55);color:inherit;border-radius:3px;padding:0 1px}
[data-theme="dark"] .it-s mark,[data-theme="oled"] .it-s mark,.reader .jwr-fi mark{background:rgba(255,200,40,.35)}
.it-see{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;color:var(--accent);margin-top:2px}
.it-i.row-mini{display:flex;align-items:center;gap:8px;padding:7px 11px}
.it-i.row-mini b{font-family:var(--font-read);font-weight:600;font-size:.95rem;flex:1;min-width:0}
.it-i.row-mini .it-vol,.it-i.row-mini .it-see{margin:0 0 0 auto}
.it-sug{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 8px}
.it-sug:empty{display:none}
/* Hinweis beim Markieren */
.it-pill{position:fixed;z-index:125;display:inline-flex;align-items:center;gap:6px;max-width:min(360px,calc(100vw - 16px));padding:6px 12px 6px 9px;border-radius:999px;border:1px solid rgba(var(--accent-rgb),.35);background:var(--surface);color:var(--text);font:500 .82rem var(--font-ui);box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer;animation:viewin .16s ease}
.it-pill svg{color:var(--accent);flex:none}
.it-pill span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.it-pill b{color:var(--accent)}
.it-pill i{font-style:normal;color:var(--text-3);font-size:.75rem}
.it-pill:hover{border-color:var(--accent)}
/* Nachschlage-Fenster */
.it-pop{display:flex;flex-direction:column;gap:2px;max-width:min(440px,86vw)}
.it-pop-h{display:flex;align-items:center;gap:6px;padding:2px 4px 6px;border-bottom:1px solid var(--border);margin-bottom:4px}
.it-pop-h svg{color:var(--accent)}
.it-pop .btn{align-self:flex-start;margin-top:4px}
@media (pointer:coarse){.it-l{min-width:34px;height:34px}.it-pill{padding:8px 14px 8px 11px;font-size:.88rem}}

/* ════════════════════════════════════════════════════════════════════════
   Audio-Player: schwebende Leiste unten, ausklappbare Großansicht mit Tempo,
   Schlaf-Timer und Warteschlange. Überall gleich; über Fenstern kompakt.
   ════════════════════════════════════════════════════════════════════════ */
.ap{--ap-w:min(720px,calc(100vw - 24px));position:fixed;left:50%;bottom:calc(16px + var(--sab,0px));z-index:230;width:var(--ap-w);transform:translate(-50%,calc(100% + 40px));opacity:0;pointer-events:none;transition:transform .45s var(--ease),opacity .3s ease;font-family:var(--font-ui)}
.ap.on{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.ap audio{display:none}
.ap-bar{position:relative;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 10px;border-radius:20px;background:var(--elev,var(--surface));border:1px solid var(--border-2,var(--border));box-shadow:0 18px 50px -12px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.08);overflow:hidden}
.ap-bar::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(var(--accent-rgb),.10),transparent 42%);pointer-events:none}
.ap-bar > *{position:relative}
/* Fortschritt oben in der Leiste (ziehen zum Spulen) */
.ap-prog{position:absolute!important;left:0;right:0;top:0;height:5px;cursor:pointer;touch-action:none;background:rgba(var(--accent-rgb),.10)}
.ap-prog:hover{height:7px}
.ap-buf{position:absolute;left:0;top:0;bottom:0;background:rgba(var(--accent-rgb),.16);width:0}
.ap-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 70%,#fff));box-shadow:0 0 12px rgba(var(--accent-rgb),.6);border-radius:0 3px 3px 0;transition:width .25s linear}
/* Cover */
.ap-cover{border:0;padding:0;background:none;cursor:pointer;flex:none;border-radius:13px}
.ap-art{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;position:relative;overflow:hidden;color:#fff;background:radial-gradient(120% 120% at 20% 10%,color-mix(in srgb,var(--accent) 65%,#fff) 0%,var(--accent) 45%,color-mix(in srgb,var(--accent) 55%,#000) 100%);box-shadow:0 6px 18px -6px rgba(var(--accent-rgb),.7),inset 0 1px 0 rgba(255,255,255,.25)}
.ap-art[data-k="song"]{background:radial-gradient(120% 120% at 20% 10%,#f6c56b 0%,#d9892f 48%,#8a4a14 100%)}
.ap-art[data-k="bible"]{background:radial-gradient(120% 120% at 20% 10%,#8fb8e8 0%,#3d6fb0 50%,#1d355c 100%)}
.ap-art[data-k="rec"]{background:radial-gradient(120% 120% at 20% 10%,#b4a6e8 0%,#6b58b8 50%,#35286a 100%)}
.ap-art img{width:100%;height:100%;object-fit:cover}
.ap-art .ico{width:22px;height:22px;opacity:.95}
.ap-art i{position:absolute;right:4px;bottom:3px;font:800 .56rem var(--font-ui);font-style:normal;letter-spacing:.02em;color:rgba(255,255,255,.92);text-shadow:0 1px 2px rgba(0,0,0,.35)}
.ap-art.big{width:min(220px,52vw);height:min(220px,52vw);border-radius:26px;box-shadow:0 26px 60px -18px rgba(var(--accent-rgb),.75)}
.ap-art.big .ico{width:64px;height:64px}
.ap-art.big i{font-size:1rem;right:14px;bottom:10px}
.ap.playing .ap-cover .ap-art{animation:apGlow 3s ease-in-out infinite alternate}
@keyframes apGlow{from{box-shadow:0 6px 18px -6px rgba(var(--accent-rgb),.55)}to{box-shadow:0 8px 26px -4px rgba(var(--accent-rgb),.95)}}
/* Titel */
.ap-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;cursor:pointer}
.ap-t{font-size:.92rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.ap-s{font-size:.74rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-time{flex:none;font-variant-numeric:tabular-nums;color:var(--text-3);font-size:.74rem;white-space:nowrap}
/* Knöpfe */
.ap-ctl{display:flex;align-items:center;gap:2px;flex:none}
.ap button{font:inherit}
.ap-ctl button,.ap-mini,.ap-speed{border:0;background:none;color:var(--text-2);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:background .15s,color .15s,transform .1s}
.ap-ctl button:hover,.ap-mini:hover,.ap-speed:hover{background:var(--surface-2);color:var(--text)}
.ap-ctl button:active{transform:scale(.92)}
.ap-ctl button:disabled{opacity:.35;cursor:default}
.ap-ctl .ico{width:21px;height:21px}
.ap .ap-play{width:44px;height:44px;color:#fff!important;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 80%,#fff),var(--accent))!important;box-shadow:0 8px 20px -6px rgba(var(--accent-rgb),.8)}
.ap .ap-play:hover{filter:brightness(1.06)}
.ap .ap-play .ico{width:18px;height:18px}
.ap.loading .ap-play{animation:apPulse 1s ease-in-out infinite}
@keyframes apPulse{50%{box-shadow:0 0 0 7px rgba(var(--accent-rgb),.18)}}
.ap-speed{width:auto;min-width:42px;padding:0 8px;border-radius:10px;font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums}
.ap-mini{width:32px;height:32px}
/* Großansicht */
.ap-full{display:none;margin-bottom:10px;padding:14px 18px 16px;border-radius:24px;background:var(--elev,var(--surface));border:1px solid var(--border-2,var(--border));box-shadow:0 30px 80px -20px rgba(0,0,0,.45);max-height:min(76vh,720px);overflow:auto;overscroll-behavior:contain;animation:viewin .25s ease}
.ap.open .ap-full{display:block}
.ap-fh{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ap-hero{display:flex;flex-direction:column;align-items:center;gap:14px;margin:6px 0 10px;text-align:center}
.ap-ht{display:flex;flex-direction:column;gap:3px;max-width:100%}
.ap-t2{font-family:var(--font-read);font-size:1.25rem;line-height:1.3;color:var(--text)}
.ap-s2{font-size:.82rem;color:var(--text-3)}
.ap-seek input{width:100%;accent-color:var(--accent);height:22px}
.ap-times{display:flex;justify-content:space-between;font-size:.74rem;color:var(--text-3);font-variant-numeric:tabular-nums;margin-top:-2px}
.ap-big{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 0 12px}
.ap-big button{border:0;background:none;color:var(--text);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.ap-big button:hover{background:var(--surface-2)}
.ap-big button:disabled{opacity:.35}
.ap-big .ap-play{width:66px;height:66px}
.ap-big .ap-play .ico{width:26px;height:26px}
.ap-opts{display:grid;gap:10px;margin:4px 0 10px}
.ap-o{display:flex;flex-direction:column;gap:5px}
.ap-o .lbl{display:inline-flex;align-items:center;gap:5px}
.ap-speeds,.ap-sleeps{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.ap-speeds button,.ap-sleeps button{border:1px solid var(--border);background:var(--surface);color:var(--text-2);border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700;cursor:pointer}
.ap-speeds button.on,.ap-sleeps button.on{background:var(--accent);border-color:var(--accent);color:#fff}
.ap-acts{display:flex;gap:6px;justify-content:center;margin-bottom:6px}
.ap-acts:empty{display:none}
.ap-qh{display:flex;align-items:center;justify-content:space-between;margin:10px 2px 6px;padding-top:10px;border-top:1px solid var(--border)}
.ap-qs{max-height:min(260px,32vh);overflow:auto;overscroll-behavior:contain;position:relative}
.ap-qi{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;text-align:left;padding:7px 8px;border-radius:10px;cursor:pointer;color:var(--text-2);font-size:.86rem}
.ap-qi:hover{background:var(--surface-2)}
.ap-qi.on{background:var(--accent-soft);color:var(--text);font-weight:700}
.ap-qn{width:22px;flex:none;text-align:center;font-variant-numeric:tabular-nums;color:var(--text-3);font-size:.76rem}
.ap-qx{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-eq{display:inline-flex;align-items:flex-end;gap:2px;height:12px}
.ap-eq i{width:3px;background:var(--accent);border-radius:1px;animation:apEq .9s ease-in-out infinite}
.ap-eq i:nth-child(2){animation-delay:-.3s}.ap-eq i:nth-child(3){animation-delay:-.6s}
@keyframes apEq{0%,100%{height:3px}50%{height:12px}}
/* Platz schaffen, damit nichts verdeckt wird */
html.ap-on .view{padding-bottom:110px}
/* Über geöffneten Fenstern: kompakt rechts unten (Abspielen/Pause bleibt erreichbar) */
html.scroll-lock .ap.on:not(.open){z-index:265;left:auto;right:16px;width:auto;transform:none}
html.scroll-lock .ap.on:not(.open) .ap-bar{padding:6px;gap:6px;border-radius:999px}
html.scroll-lock .ap.on:not(.open) :is(.ap-meta,.ap-time,.ap-x,.ap-nx,.ap-mini[data-ap="close"]){display:none}
html.scroll-lock .ap.on:not(.open) .ap-art{width:40px;height:40px;border-radius:50%}
html.scroll-lock .ap.on.open{z-index:265}
/* Vortragsmodus und Seitenansicht: kein Player */
body:has(.prompter) .ap,body:has(.pgv) .ap{display:none}
/* „Anhören“ – überall derselbe Knopf */
.au-btn .ico{color:var(--accent)}
.au-btn span{white-space:nowrap}
.jwr-au{display:inline-flex}
.jwr-au:empty{display:none}
.lib-au{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:4px 6px 10px}
.lib-play{flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--accent);display:grid;place-items:center;cursor:pointer}
.lib-play:hover{border-color:var(--accent);background:var(--accent-soft)}
.song-row.playing{background:var(--accent-soft);border-radius:10px}
.song-row.playing .song-nr{color:var(--accent)}
@media (max-width:1024px){
  .ap{bottom:calc(72px + var(--sab,0px))}
  html.ap-on .view{padding-bottom:170px}
}
@media (max-width:720px){
  .ap{--ap-w:calc(100vw - 16px)}
  .ap-bar{gap:6px;padding:9px 8px 8px 8px;border-radius:18px}
  .ap-art{width:44px;height:44px}
  .ap :is(.ap-time,.ap-x){display:none}
  .ap.open{bottom:calc(8px + var(--sab,0px))}
  .ap-full{max-height:calc(100dvh - 150px - var(--sat,0px));border-radius:22px}
  .ap-art.big{width:min(180px,44vw);height:min(180px,44vw)}
}
@media (prefers-reduced-motion:reduce){.ap,.ap-fill{transition:none}.ap.playing .ap-cover .ap-art,.ap-eq i{animation:none}}
/* Meldungen über dem Player */
html.ap-on .toasts{bottom:calc(104px + var(--sab,0px))}
@media (max-width:1024px){html.ap-on .toasts{bottom:calc(160px + var(--sab,0px))}}
/* Mitlesen: gerade vorgelesener Absatz bzw. Vers – lila Schrift, unterscheidet sich von Auswahl und Markierungen */
:root{--ap-read:#7b3fc4}
[data-theme="dark"],[data-theme="oled"]{--ap-read:#c9a6ff}
.reader .ap-now,.reader .ap-now *:not(mark):not(.pnum){color:var(--ap-read)!important;transition:color .3s}
.reader .ap-now{text-decoration:none}
.bible-reader .v.ap-now .vtx{color:var(--ap-read);transition:color .3s}

/* ─── Bildansicht (Lightbox) ─────────────────────────────────────────── */
.lb{position:fixed;inset:0;z-index:285;display:flex;flex-direction:column;background:rgba(8,10,14,calc(.97 * var(--lb-fade,1)));color:#f3f1ee;opacity:0;transition:opacity .18s ease;touch-action:none;
  padding:var(--sat,0px) var(--sar,0px) var(--sab,0px) var(--sal,0px);-webkit-user-select:none;user-select:none}
.lb.in{opacity:1}.lb.out{opacity:0}
.lb-top{display:flex;align-items:center;gap:6px;padding:10px 12px 6px;min-height:52px;flex:0 0 auto}
.lb-n{font:600 .82rem/1 var(--font-ui);background:rgba(255,255,255,.1);border-radius:99px;padding:6px 10px;font-variant-numeric:tabular-nums}
.lb-n:empty{display:none}
.lb-t{font:500 .9rem/1.3 var(--font-ui);color:rgba(255,255,255,.72);min-width:0;max-width:52vw}
.lb-b{display:inline-grid;place-items:center;min-width:38px;height:38px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font:600 .76rem/1 var(--font-ui);padding:0 8px;transition:background .15s}
.lb-b:hover{background:rgba(255,255,255,.18)}
.lb-pct{min-width:58px;font-variant-numeric:tabular-nums}
.lb-stage{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;display:grid;place-items:center;cursor:default;touch-action:none}
.lb-pan{display:grid;place-items:center;width:100%;height:100%;transform-origin:50% 50%;will-change:transform}
.lb-pan.a-in{animation:lbIn .22s var(--ease)}
.lb-pan.from-r{animation:lbFromR .24s var(--ease)}.lb-pan.from-l{animation:lbFromL .24s var(--ease)}
.lb-pan.bump-r{animation:lbBumpR .3s var(--ease)}.lb-pan.bump-l{animation:lbBumpL .3s var(--ease)}
@keyframes lbIn{from{opacity:0;transform:scale(.97)}}
@keyframes lbFromR{from{opacity:.2;transform:translateX(18%)}}
@keyframes lbFromL{from{opacity:.2;transform:translateX(-18%)}}
@keyframes lbBumpR{40%{transform:translateX(-22px)}}
@keyframes lbBumpL{40%{transform:translateX(22px)}}
.lb-img{max-width:calc(100% - 24px);max-height:calc(100% - 12px);object-fit:contain;border-radius:6px;box-shadow:0 20px 60px -20px rgba(0,0,0,.8);-webkit-user-drag:none;cursor:zoom-in}
.lb.zoomed .lb-img{cursor:grab;border-radius:0}
.lb.zoomed .lb-nav{opacity:0;pointer-events:none}
.lb-spin{position:absolute;width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#fff;animation:lbSpin .8s linear infinite;display:none;pointer-events:none}
.lb.loading .lb-spin{display:block}
@keyframes lbSpin{to{transform:rotate(360deg)}}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(20,24,30,.55);color:#fff;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .15s,background .15s;z-index:2}
.lb-nav:hover{background:rgba(40,46,56,.85)}
.lb-nav:disabled{opacity:0;pointer-events:none}
.lb-nav.l{left:14px}.lb-nav.r{right:14px}
.lb.one .lb-nav{display:none}
@media (hover:none){.lb-nav{width:44px;height:44px;background:rgba(20,24,30,.35)}}
.lb-vid{position:relative;display:grid;place-items:center;width:100%;height:100%}
.lb-vid .lb-img{cursor:pointer;filter:brightness(.82)}
.lb-vplay{position:absolute;width:84px;height:84px;border-radius:50%;border:0;background:rgba(var(--accent-rgb),.94);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 40px -10px rgba(0,0,0,.7);transition:transform .15s}
.lb-vplay:hover{transform:scale(1.06)}
.lb-vplay .ico{width:34px;height:34px;margin-left:5px}
.lb-vid.busy .lb-vplay{animation:lbPulse 1s ease-in-out infinite}
@keyframes lbPulse{50%{transform:scale(.92);opacity:.7}}
.lb-video{max-width:calc(100% - 24px);max-height:calc(100% - 12px);border-radius:8px;background:#000;box-shadow:0 20px 60px -20px rgba(0,0,0,.8)}
.lb-foot{flex:0 0 auto;padding:8px 14px 12px;display:flex;flex-direction:column;gap:10px;align-items:center}
.lb-cap{max-width:860px;width:100%;text-align:center;font:400 .95rem/1.5 var(--font-ui);color:#f3f1ee;max-height:4.6em;overflow:hidden;position:relative;cursor:default;-webkit-user-select:text;user-select:text}
.lb-cap.long{cursor:pointer;-webkit-mask-image:linear-gradient(#000 62%,transparent);mask-image:linear-gradient(#000 62%,transparent)}
.lb-cap.open{max-height:38vh;overflow:auto;-webkit-mask-image:none;mask-image:none}
.lb-c2{font-size:.82rem;color:rgba(255,255,255,.6);margin-top:3px}
.lb-cap[hidden],.lb-acts[hidden]{display:none}
.lb-acts{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.lb-a{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:99px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;font:600 .82rem/1 var(--font-ui);cursor:pointer;transition:background .15s,border-color .15s}
.lb-a:hover{background:rgba(255,255,255,.16)}
.lb-a.pri{background:var(--accent);border-color:var(--accent)}
.lb-a.pri:hover{filter:brightness(1.08)}
.lb-a.done{border-color:#5fbf8a;color:#9fe3bb}
.lb-thumbs{display:flex;gap:6px;overflow-x:auto;max-width:100%;padding:2px 2px 4px;scrollbar-width:thin;touch-action:pan-x}
.lb-th{position:relative;flex:0 0 auto;width:62px;height:44px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;background:#222;cursor:pointer;opacity:.55;transition:opacity .15s,border-color .15s}
.lb-th img{width:100%;height:100%;object-fit:cover;display:block}
.lb-th .ico{position:absolute;inset:0;margin:auto;color:#fff;filter:drop-shadow(0 1px 3px #000)}
.lb-th:hover{opacity:.85}
.lb-th.on{opacity:1;border-color:var(--accent-2)}
.lb-sheet{position:absolute;inset:0;z-index:5;background:rgba(0,0,0,.55);display:flex;align-items:flex-end;justify-content:center;animation:fadein .15s}
.lb-panel{width:100%;max-width:560px;max-height:min(72vh,560px);display:flex;flex-direction:column;background:var(--elev);color:var(--text);border-radius:18px 18px 0 0;box-shadow:0 -12px 40px -10px rgba(0,0,0,.5);animation:lbUp .22s var(--ease);overflow:hidden}
@keyframes lbUp{from{transform:translateY(40px);opacity:.4}}
.lb-sh{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 12px 10px 18px;border-bottom:1px solid var(--border);flex:0 0 auto}
.lb-sh b{font:600 .95rem/1.3 var(--font-ui)}
.lb-sh .lb-b{background:var(--surface-3);color:var(--text)}
.lb-sl{flex:1 1 auto;overflow:auto;padding:6px 8px calc(12px + var(--sab,0px));display:flex;flex-direction:column;gap:2px;touch-action:pan-y}
.lb-sl button{display:flex;align-items:center;gap:8px;text-align:left;border:0;background:none;color:var(--text);font:500 .92rem/1.35 var(--font-ui);padding:12px;border-radius:10px;cursor:pointer}
.lb-sl button:hover{background:var(--surface-2)}
.lb-sl button.on{background:rgba(var(--accent-rgb),.12);color:var(--accent)}
@media (min-width:700px){.lb-sheet{align-items:center}.lb-panel{border-radius:18px}}
@media (max-width:640px){
  .lb-top{padding:8px 8px 4px;min-height:46px}
  .lb-t{display:none}
  .lb-pct,[data-lb="in"],[data-lb="out"]{display:none}
  .lb-img,.lb-video{max-width:100%;border-radius:0}
  .lb-cap{font-size:.9rem}
  .lb-th{width:50px;height:36px}
}

/* ─── Bilder und Videos im Leser ───────────────────────────────────────── */
.reader .rd-fig img{cursor:zoom-in;transition:filter .15s}
.reader .rd-fig img:hover{filter:brightness(1.04)}
.reader .rd-lead{margin-top:0}
.reader .rd-lead img{border-radius:14px;aspect-ratio:auto;max-height:52vh;object-fit:cover}
.reader .rd-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin:1.2em 0}
.reader .rd-gal .rd-fig{margin:0}
.reader .rd-gal .rd-fig img{aspect-ratio:4/3;object-fit:cover}
.reader .rd-gal .cap{font-size:.74em;margin:.2em 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.reader .rd-vid{position:relative}
.reader .rd-vid img{cursor:pointer}
.reader .rd-vid .rd-play{position:absolute;left:50%;top:0;height:0;transform:translateX(-50%)}
.rd-vbtn{position:absolute;left:50%;top:var(--vy,40%);transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;border:0;background:rgba(var(--accent-rgb),.94);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px -8px rgba(0,0,0,.6);transition:transform .15s}
.rd-vbtn:hover{transform:translate(-50%,-50%) scale(1.07)}
.rd-vbtn .ico{width:28px;height:28px;margin-left:4px}
.rd-vbtn.busy{animation:lbPulse 1s ease-in-out infinite}
/* Video-Player: immer genau so breit wie der Platz daneben – nie breiter als das Fenster */
.rd-vplayer{margin:1em 0 1.3em;max-width:100%;min-width:0;box-sizing:border-box;border-radius:12px;overflow:hidden;background:#000;box-shadow:var(--shadow)}
.rd-vplayer video{display:block;width:100%;max-width:100%;height:auto;max-height:70vh;object-fit:contain;background:#000}
.rd-vbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;background:var(--surface-2);font-family:var(--font-ui)}
.rd-vbar b{flex:1 1 180px;min-width:0;font-size:.85rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reader a[data-video]{text-decoration:none;border-bottom:1px dashed currentColor}
.reader a[data-video]::before{content:"";display:inline-block;width:.9em;height:.9em;margin-right:.25em;vertical-align:-.1em;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/contain no-repeat}
.rd-fig .rd-madd{position:absolute;right:10px;top:10px;opacity:0;transition:opacity .15s}
.rd-fig:hover .rd-madd,.rd-fig:focus-within .rd-madd{opacity:1}
@media (hover:none){.rd-fig .rd-madd{opacity:.92}}
.reader .rd-fig{position:relative}
.rd-verr{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:18px 16px;color:#e8e4de;background:#15191f;font:500 .88rem/1.4 var(--font-ui)}
.rd-verr .ico{color:#e0a07f}
.lb-verr{display:flex;flex-direction:column;align-items:center;gap:12px;color:#e8e4de;font:500 .95rem/1.4 var(--font-ui);text-align:center;padding:20px}
.lb-verr .ico{width:32px;height:32px;color:#e0a07f}
.reader .rd-vph{aspect-ratio:16/9;border-radius:12px;background:linear-gradient(135deg,#2a2f38,#171b21);margin:0 0 .5em;cursor:pointer}
.reader .rd-vph.err{opacity:.6}
.reader .rd-vid:has(.rd-vph) .rd-vbtn{top:50%}

/* ─── Bibeltexte herausziehen ─────────────────────────────────────────── */
.ex-src{padding:14px 16px;margin-bottom:14px;display:flex;flex-direction:column;gap:12px}
.ex-srcs{flex-wrap:wrap;align-self:flex-start;max-width:100%}
.ex-srcs button{display:inline-flex;align-items:center;gap:6px}
.ex-res{padding:0;overflow:hidden}
.ex-head{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;padding:18px 20px 12px}
.ex-t{margin:0 0 8px;font-size:1.2rem;line-height:1.3}
.ex-sum{display:flex;flex-wrap:wrap;gap:6px}
.ex-sum .chip .ico{margin-right:2px}
.chip.accent{background:var(--accent-soft);color:var(--accent)}
.ex-acts{display:flex;gap:6px;flex-wrap:wrap}
.ex-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:8px 20px 10px;border-bottom:1px solid var(--border);background:var(--surface-2);position:sticky;top:0;z-index:2}
.ex-opt{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;color:var(--text-2);cursor:pointer}
.ex-zoom{margin-left:auto;display:inline-flex;gap:2px}
.ex-body{padding:6px 20px 22px}
.ex-g{padding:12px 0 4px;border-bottom:1px dashed var(--border)}
.ex-g:last-child{border-bottom:0}
.ex-g.solo{border-bottom:0;padding:2px 0 0}
.ex-g.solo .ex-h{margin:10px 0 2px;font-size:.82em;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em}
.ex-gh{display:flex;flex-direction:column;gap:3px;margin:4px 0 10px}
.ex-n{font:700 .74rem/1.2 var(--font-ui);letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}
.ex-q{font:500 .9em/1.45 var(--font-ui);color:var(--text-2);font-style:italic}
p.ex-q{margin:0}
.ex-it{position:relative;margin:0 0 12px;padding:10px 14px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}
.ex-it.lies{border-color:rgba(var(--accent-rgb),.45);background:linear-gradient(90deg,rgba(var(--accent-rgb),.07),transparent 60%);box-shadow:inset 3px 0 0 var(--accent)}
.ex-ih{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.ex-ref{font:700 .95em/1.3 var(--font-ui);color:var(--accent);text-decoration:none;border-bottom:1px dotted rgba(var(--accent-rgb),.6)}
.ex-ref:hover{border-bottom-style:solid}
.ex-lies{display:inline-flex;align-items:center;gap:4px;font:700 .68rem/1 var(--font-ui);text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--accent);padding:4px 7px;border-radius:99px}
.ex-lies .ico{width:11px;height:11px}
.ex-fn{font:600 .7rem/1 var(--font-ui);color:var(--text-3);border:1px solid var(--border-2);border-radius:5px;padding:2px 4px}
.ex-iacts{margin-left:auto;display:inline-flex;gap:2px;opacity:.75}
.ex-it:hover .ex-iacts{opacity:1}
.ex-iacts .btn.done{color:var(--ok,#2f9e5b)}
.ex-v{font-size:1.02em;line-height:1.65;color:var(--text)}
.ex-v sup{color:var(--accent);font:700 .62em var(--font-ui);margin:0 2px 0 3px}
.ex-v .r{font:700 .78em var(--font-ui);color:var(--text-3);margin-right:4px}
.ex-p{margin:0 0 .7em;line-height:1.7}
.ex-p .pnum{display:inline-grid;place-items:center;min-width:1.6em;height:1.6em;border-radius:50%;background:var(--surface-3);font:700 .7em var(--font-ui);color:var(--text-2);margin-right:4px;vertical-align:.15em}
.ex-h{font:700 .95em/1.3 var(--font-ui);margin:14px 0 8px;color:var(--text)}
.ex-mark{color:var(--accent);font-weight:700}
.ex-inl{margin:-2px 0 16px 14px;padding-left:12px;border-left:2px solid var(--border)}
.ex-inl .ex-it{margin-bottom:8px}
.ex-list p{margin:0 0 .8em;line-height:1.8}
.ex-list .ex-ref{font-weight:600}
.ex-list .ex-ref.lies{font-weight:800}
.ex-modal .ex-res{border:0;box-shadow:none}
.ex-modal .ex-bar{top:-1px}
.modal.ex-modal-w .modal-b{padding:0}
@media (max-width:640px){
  .ex-head,.ex-bar,.ex-body{padding-left:14px;padding-right:14px}
  .ex-srcs button span{font-size:.8rem}
  .ex-zoom{margin-left:0}
  .ex-inl{margin-left:4px;padding-left:8px}
}

/* ─── Dispositionen (S-34 und weitere) ────────────────────────────────── */
.ol-top:empty{display:none}
.ol-top{margin-bottom:14px}
.ol-setup{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border:1px solid rgba(var(--accent-rgb),.35);background:linear-gradient(135deg,rgba(var(--accent-rgb),.08),transparent 70%)}
.ol-setup h3{margin:0 0 6px;font-size:1.1rem}
.ol-setup p{margin:0 0 12px;line-height:1.55;color:var(--text-2);max-width:78ch}
.ol-setup-i{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--accent);color:#fff}
.ol-setup-i .ico{width:24px;height:24px}
.ol-stand{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.86rem;color:var(--text-2)}
.ol-stand > .ico{color:var(--ok)}
.ol-stand > span{flex:1;min-width:200px}
.ol-stand b{color:var(--text)}

.olv{--ol-h:calc(100vh - 250px);display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:20px;align-items:stretch}
.ol-left{display:flex;flex-direction:column;gap:8px;height:var(--ol-h);min-height:0;min-width:0}
.ol-left > *{flex:none}
.ol-bar{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.ol-bar .select{width:auto}
.ol-bar2{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.ol-opt{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;color:var(--text-2);cursor:pointer}
.ol-list{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px}
.ol-i{display:flex;gap:12px;align-items:flex-start;padding:10px 10px;border-radius:12px;cursor:pointer;outline:none;transition:background .15s}
.ol-i + .ol-i{border-top:1px solid var(--border)}
.ol-i:hover{background:var(--surface-2)}
.ol-i.on{background:rgba(var(--accent-rgb),.1);border-top-color:transparent}
.ol-i.on + .ol-i{border-top-color:transparent}
.ol-i:focus-visible{box-shadow:inset 0 0 0 2px rgba(var(--accent-rgb),.6)}
.ol-num{flex:none;min-width:40px;height:40px;padding:0 6px;border-radius:11px;display:grid;place-items:center;font:750 .95rem/1 var(--font-ui);background:var(--navy);color:#fff;font-variant-numeric:tabular-nums}
.ol-num.up{background:var(--accent-soft);color:var(--accent)}
.ol-num.big{min-width:52px;height:52px;font-size:1.25rem;border-radius:14px}
.ol-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.ol-b > b{font-size:.93rem;line-height:1.35;font-weight:650}
.ol-m{font-size:.76rem;color:var(--text-3);display:flex;align-items:center;gap:0;flex-wrap:wrap}
.ol-dot{margin:0 5px;opacity:.8}
.ol-vis{display:inline-flex;align-items:center}
.ol-vis .ico{width:13px;height:13px}
.ol-snip{font-size:.8rem;line-height:1.45;color:var(--text-2);background:var(--surface-2);border-radius:8px;padding:5px 8px;margin-top:3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ol-snip .ico{width:12px;height:12px;vertical-align:-1px;color:var(--accent)}
.ol-flags{flex:none;display:flex;flex-direction:column;gap:4px;align-items:flex-end}
.ol-flags:empty{display:none}
.ol-flags .chip .ico{width:12px;height:12px}

.ol-right{height:var(--ol-h);overflow:auto;overscroll-behavior:contain;padding:0;min-width:0}
.ol-right > .empty{margin:auto;height:100%;display:flex;flex-direction:column;justify-content:center}
.ol-pv-h{padding:18px 20px 14px;border-bottom:1px solid var(--border)}
.ol-pv-t{margin:0 0 4px;font-size:1.2rem;line-height:1.3}
.ol-chips{gap:6px;margin:12px 0 10px}
.ol-acts{gap:8px}
.btn.warn{background:rgba(199,129,28,.12);color:var(--warn);border-color:rgba(199,129,28,.35)}
.ol-goal{margin:14px 20px 0}
.ol-imgs{display:flex;gap:10px;overflow-x:auto;padding:14px 20px 2px}
.ol-img{flex:none;display:flex;flex-direction:column;gap:4px;align-items:stretch;border:0;background:none;padding:0;cursor:zoom-in;font-size:.72rem;color:var(--text-3)}
.ol-img img{width:132px;height:88px;object-fit:cover;border-radius:10px;border:1px solid var(--border);background:var(--surface-3)}
.ol-body{padding:14px 20px 26px}
.ol-body .imp-prev{font-size:.95rem}
.ol-body .imp-item{font-size:.92rem;line-height:1.55;padding:6px 12px}
.ol-modal .modal-b{padding:0}

/* Hochladen: ausarbeiten oder ins Archiv */
.ol-ask-f{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--surface-2)}
.ol-ask-f > .ico{width:26px;height:26px;color:var(--accent);flex:none}
.ol-ask .lbl{margin:12px 0 6px}
.ol-choice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:12px;margin-bottom:8px;cursor:pointer}
.ol-choice:has(input:checked){border-color:var(--accent);background:rgba(var(--accent-rgb),.06)}
.ol-choice input{margin-top:3px}
.ol-choice > span{display:flex;flex-direction:column;gap:2px}
.ol-visbox{margin-top:4px}
.ol-vis-seg button{gap:6px}
.ol-vis-seg.dim{opacity:.45}
.ol-vishelp{margin:6px 0 4px}
.ol-alsoarch{margin-top:6px}
.ol-many{display:flex;flex-direction:column;gap:6px;max-height:34vh;overflow:auto;padding:8px 10px;border:1px solid var(--border);border-radius:12px}
.ol-help p{line-height:1.6;margin:0 0 12px}

@media (max-width:1024px){
  .olv{grid-template-columns:minmax(0,1fr)}
  .ol-left{height:auto}
  .ol-list{max-height:none;overflow:visible}
  .ol-right{display:none}
}
@media (max-width:640px){
  .ol-setup{flex-direction:column;padding:16px}
  .ol-i{padding:10px 6px;gap:10px}
  .ol-num{min-width:36px;height:36px;font-size:.88rem}
  .ol-flags{flex-direction:row;flex-wrap:wrap}
  .ol-i{flex-wrap:wrap}
  .ol-flags{width:100%;justify-content:flex-start;padding-left:46px}
  .ol-pv-h{padding:14px 14px 12px}
  .ol-body,.ol-imgs{padding-left:14px;padding-right:14px}
  .ol-goal{margin:12px 14px 0}
  .ol-vis-seg{display:flex;flex-direction:column;align-items:stretch}
}
.ol-ver{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-2)}

/* ─── Eigene Publikationen (nicht öffentliche JWPUB) ─── */
.lib-i.own .own-ic{background:var(--accent-soft);color:var(--accent)}
.lib-i.own .own-ic.in{background:rgba(58,111,196,.12);color:#3a6fc4}
.lib-i .own-edit{flex:none;opacity:.7}
.lib-i:hover .own-edit,.lib-i .own-edit:focus{opacity:1}
.own-snip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px;color:var(--text-2)!important;line-height:1.4}
.own-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 6px 8px;padding:8px 10px;border-radius:12px;background:var(--accent-soft);font-size:.8rem;color:var(--text-2)}
.own-head>span{flex:1;min-width:0}
.own-head>.ico{color:var(--accent);flex:none}
.own-res:empty{display:none}
.own-wol{margin-bottom:10px}
.own-upd{display:flex;gap:6px;align-items:flex-start;margin:12px 0 0}
.own-upd .ico{flex:none;margin-top:2px}
/* Freigabe */
.own-share .own-mode{margin:2px 0 8px}
.own-sh{display:flex;flex-direction:column;gap:2px;margin-top:4px}
.own-sh[hidden],.own-sh-me[hidden]{display:none}
.own-sh-h{font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:10px 2px 4px}
.own-sh-h span{font-weight:500;letter-spacing:0;text-transform:none;margin-left:6px}
.own-sh-r{display:flex;align-items:center;gap:10px;padding:5px 8px;border-radius:10px;border:1px solid transparent}
.own-sh-r[hidden]{display:none}
.own-sh-r.on{background:var(--accent-soft);border-color:rgba(var(--accent-rgb),.25)}
.own-sh-r label{flex:1;min-width:0;display:flex;align-items:center;gap:8px;cursor:pointer}
.own-sh-r label span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.own-sh-r label small{display:block;color:var(--text-3);font-size:.72rem}
.own-sh-r .select{width:auto;max-width:56%;flex:none}
.own-sh-r .select.sm{padding-right:30px;background-position:right 9px center}
.own-sh-r .select:disabled{opacity:.45}
.own-sh-q{margin:0 0 6px}
.own-sh-ppl{max-height:32vh;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:2px}
.own-sh-help{margin:10px 2px 0;line-height:1.5}
/* Nur zum Lesen freigegeben: Hinweis in der Aktionsleiste des Lesers */
.jwr-act.ro .jwr-n{color:var(--text-2)}
@media (max-width:560px){
  .own-sh-r{flex-wrap:wrap}
  .own-sh-r .select{max-width:none;width:100%}
}
/* Reiter „Bibliothek“ / „Eigene“ – der Inhalt füllt die Spalte, nur die Liste scrollt */
.research .rs-left > .lib-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.lib-body > *{flex:none}
.lib-modes{display:flex;width:100%;margin-bottom:8px}
.lib-modes button{flex:1;justify-content:center}
.lib-mode-n{font-style:normal;font-size:.72rem;font-weight:700;min-width:18px;padding:1px 6px;border-radius:99px;background:rgba(var(--accent-rgb),.14);color:var(--accent);text-align:center}
.own-bar{display:flex;align-items:center;gap:8px;margin:2px 4px 6px}
.own-bar .seg button .ico{width:14px;height:14px}
.own-cat{display:flex;align-items:center;gap:6px}
.own-cat .ico{width:14px;height:14px;color:var(--accent)}
.own-cat .muted{font-weight:500}
/* Kategorie-Symbol mit kleinem Zeichen: privat / geteilt / von anderen */
.lib-i.own .own-ic{position:relative}
.own-ic-b{position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--surface);box-shadow:0 0 0 1px var(--border);font-style:normal}
.own-ic-b .ico{width:11px;height:11px}
/* Favoriten */
.own-fav{flex:none;color:var(--text-3)}
.own-fav:hover{color:#d49a12}
.own-fav.on{color:#d49a12}
.own-fav.on .ico{fill:currentColor}
.own-head .own-fav{margin-left:auto}
/* Hinweis in der Bibliothek-Suche */
.own-jump{display:flex;align-items:center;gap:8px;width:100%;margin:2px 0 6px;padding:9px 11px;border:1px dashed rgba(var(--accent-rgb),.4);border-radius:12px;background:var(--accent-soft);color:var(--text);font:inherit;font-size:.86rem;cursor:pointer;text-align:left}
.own-jump span{flex:1}
.own-jump .ico{color:var(--accent)}
.lib-crumbs:empty{display:none}
/* Favoriten in der Bibliothek: Stern je Eintrag (dezent, beim Überfahren deutlich) und in den Brotkrumen */
.lib-i .lib-fav{opacity:.5}
.lib-i:hover .lib-fav,.lib-i .lib-fav.on,.lib-fav:focus-visible{opacity:1}
.lib-crumbs .lib-fav{margin-left:auto;flex:none}

/* ════════════════════════════════════════════════════════════════════════
   Studienleitfaden (Themen A–Z, Themenseiten) und Bibelhandbuch
   „Gottes Wort ist Wahrheit“ (Bücher, Kapitel-Layout im Leser, Kästen,
   Zeitleisten, Fragen, Antwortfelder). Farben angelehnt an die Publikation:
   Orange für Überschriften und Kennzeichnung, Türkis für Kästen-Kennungen.
   ════════════════════════════════════════════════════════════════════════ */
:root{--gw-or:#c4581f;--gw-or-soft:rgba(196,88,31,.1);--gw-teal:#0f6e74;--gw-teal-soft:rgba(15,110,116,.1);--gw-cyan:#e5f3f5;--gw-warm:#f6f2ec;--gw-cool:#eef1f5;--gw-ink:#1f2a33}
[data-theme="dark"],[data-theme="oled"]{--gw-or:#f08a4b;--gw-or-soft:rgba(240,138,75,.14);--gw-teal:#4fc1c8;--gw-teal-soft:rgba(79,193,200,.14);--gw-cyan:#16262b;--gw-warm:#1d1f22;--gw-cool:#1a1f27;--gw-ink:#e8eef2}
[data-theme="sepia"]{--gw-cyan:#e9eedd;--gw-warm:#f1e7d3;--gw-cool:#ebe3d2}

/* ─── Studienleitfaden: Kopf, Modus, Buchstaben, zwei Spalten ─── */
.gd-view{display:flex;flex-direction:column;min-height:0;font-size:calc(1rem * var(--z-guide,1))}
.research .rs-left > .gd-view{flex:1 1 auto;min-height:0}
.gd-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px}
.gd-bar .gd-stat{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gd-mode button{display:inline-flex;align-items:center;gap:5px}
.gd-qwrap{margin:0 0 8px}
.gd-letters{display:flex;flex-wrap:wrap;gap:3px;margin:0 0 10px}
.gd-letters button{min-width:30px;height:30px;padding:0 6px;border-radius:9px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:.8rem;font-weight:700;color:var(--text-2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.gd-letters button:hover{border-color:var(--accent);color:var(--accent)}
.gd-letters button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.gd-wrap{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:18px;flex:1 1 auto;min-height:0}
.gd-list,.gd-main{min-height:0;overflow:auto;overscroll-behavior:contain}
.research .gd-list,.research .gd-main{height:100%}
.gd-list{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:14px;padding:6px;background:var(--surface)}
.gd-main{padding:2px 4px 28px 2px}
.gd-main > *{max-width:var(--read-w,72ch)}
.gd-lh{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:4px 8px 8px;border-bottom:1px solid var(--border);margin-bottom:4px;position:sticky;top:-6px;background:var(--surface);z-index:1}
.gd-lh b{font-size:1.05rem;color:var(--accent)}
.gd-t{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;align-items:start;text-align:left;border:0;background:none;border-radius:10px;padding:8px 10px;cursor:pointer;font:inherit;color:var(--text)}
.gd-t:hover{background:var(--surface-2)}
.gd-t.on{background:var(--accent-soft)}
.gd-t b{font-weight:620;font-size:.93rem;line-height:1.3;grid-column:1}
.gd-t span{grid-column:1;font-size:.74rem;color:var(--text-3);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px}
.gd-t .gd-also{grid-column:1;font-style:normal;font-size:.74rem;color:var(--gd-gold,#b8860b);margin-top:1px}
.gd-t em{grid-column:2;grid-row:1;font-style:normal;font-size:.7rem;font-weight:700;color:var(--text-3);background:var(--surface-2);border-radius:20px;padding:2px 7px;align-self:center}
.gd-t.on em{background:rgba(var(--accent-rgb),.16);color:var(--accent)}
.gd-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:4px}
.gd-books button{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:5px 2px;font:inherit;font-size:.76rem;font-weight:600;color:var(--text-2);cursor:pointer}
.gd-books button:hover{border-color:var(--accent);color:var(--accent)}
.gd-books button.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.gd-bv{margin-top:6px}
.gd-hint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;min-height:240px;color:var(--text-3);padding:20px}
.gd-hint .ico{width:34px;height:34px;color:var(--gd-gold,#b8860b);opacity:.8}
.gd-hint b{color:var(--text);font-size:1.02rem}
.gd-hint span{max-width:42ch;font-size:.88rem;line-height:1.5}
.gd-back{display:none}
.gd-mh{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.gd-mh b{color:var(--accent);font-size:1.02rem}
.gd-intro{font-size:1em}
.gd-sug{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:0 0 8px}
.gd-sug:empty{display:none}
.gd-plist{display:flex;flex-direction:column;gap:2px}
.gd-tdlg{font-size:calc(1rem * var(--z-guide,1))}
@media (max-width:760px){
  .gd-wrap{grid-template-columns:minmax(0,1fr);display:block;overflow:auto}
  .gd-view.has-main .gd-list,.gd-view.has-main .gd-letters{display:none}
  .gd-view:not(.has-main) .gd-main{display:none}
  .gd-back{display:inline-flex;margin:0 0 8px}
  .gd-list{max-height:none}
  .gd-bar .gd-stat{display:none}
}

/* ─── Themenseite ─── */
.gt{font-family:var(--font-ui)}
.gt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 12px;padding:0 0 12px;border-bottom:2px solid rgba(var(--accent-rgb),.22)}
.gt-ttl{display:flex;flex-direction:column;gap:3px;min-width:0}
.gt-kick,.gw-kick{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--gd-gold,#b8860b)}
.gt-kick .ico,.gw-kick .ico{width:13px;height:13px}
.gt-ttl h3{margin:0;font-family:var(--font-read);font-size:1.55em;line-height:1.2;color:var(--read-h,var(--accent))}
.gt-ttl h3 a.sb{color:inherit;border-bottom:1px dotted currentColor;cursor:pointer}
.gt-acts{display:flex;gap:4px;flex:none}
.gt-top{margin:0 0 12px}
.gt-sec{border:1px solid var(--border);border-radius:14px;background:var(--surface);margin:0 0 10px;overflow:hidden;transition:box-shadow .2s}
.gt-sec.open{box-shadow:var(--shadow-sm)}
.gt-st{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:12px 14px;font:inherit;font-size:1.02em;font-weight:700;color:var(--text);cursor:pointer;text-align:left}
.gt-st:hover{background:var(--surface-2)}
.gt-st .gt-sn{flex:1;min-width:0}
.gt-st i{font-style:normal;font-size:.72rem;font-weight:700;color:var(--text-3);background:var(--surface-2);border-radius:20px;padding:2px 8px}
.gt-st .ico{transition:transform .2s;color:var(--text-3)}
.gt-sec.open .gt-st .ico{transform:rotate(180deg)}
.gt-sec:not(.open) .gt-sb{display:none}
.gt-sb{padding:2px 12px 12px;border-top:1px solid var(--border)}
.gt-h{font-weight:750;color:var(--gw-or);margin:14px 2px 6px;font-size:.96em;line-height:1.35}
.gt-h.l3{margin-left:16px;font-size:.9em}
.gt-h a.sb{color:inherit;border-bottom:1px dotted currentColor;cursor:pointer}
.gt-p{margin:6px 2px;font-size:.92em;color:var(--text-2)}
.gt-see{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:8px 2px}
.gt-see-l{font-size:.8em;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;margin-right:2px}
.gt-tl{display:inline-flex;align-items:center;gap:3px;border:1px solid rgba(var(--accent-rgb),.3);background:var(--accent-soft);color:var(--accent);border-radius:20px;padding:3px 8px 3px 11px;font:inherit;font-size:.82em;font-weight:620;cursor:pointer}
.gt-tl:hover{background:var(--accent-soft-2)}
.gt-tl .ico{width:13px;height:13px}
.gt-e{border-radius:11px;margin:3px 0;transition:background .15s}
.gt-e.open{background:var(--surface-2)}
.gt-em{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:11px;cursor:pointer;outline:none}
.gt-em:hover,.gt-em:focus-visible{background:var(--surface-2)}
.gt-ic{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:9px;background:var(--surface-3);color:var(--text-2)}
.gt-e.k-video .gt-ic{background:rgba(196,58,58,.1);color:#c43a3a}
.gt-e.k-web .gt-ic{background:rgba(58,111,196,.1);color:var(--info)}
.gt-e.k-xt .gt-ic{background:var(--accent-soft);color:var(--accent)}
.gt-et{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.gt-tt{font-size:.93em;font-weight:600;line-height:1.35;color:var(--text)}
.gt-loc{font-size:.76em;color:var(--text-3);line-height:1.3}
.gt-chev{color:var(--text-3);flex:none}
.gt-e.open .gt-chev .ico{transform:rotate(180deg)}
.gt-x{padding:2px 10px 10px 48px}
.gt-w{font-size:.97em;line-height:var(--read-lh,1.65);max-height:none}
.gt-w p{margin:0 0 .65em}
.gt-w .pnum{display:inline-flex;align-items:center;justify-content:center;min-width:1.5em;height:1.5em;padding:0 .3em;margin-right:.35em;border-radius:.5em;background:rgba(var(--accent-rgb),.12);color:var(--accent);font-family:var(--font-ui);font-size:.66em;font-weight:800;vertical-align:.18em}
.gt-w a,.gd-x.html a{color:var(--accent);text-decoration:none;border-bottom:1px dotted rgba(var(--accent-rgb),.5)}
.gd-x.html{white-space:normal}
.gd-x.html p{margin:0 0 .6em}
.gd-x.html .pnum{font-family:var(--font-ui);font-size:.68em;font-weight:800;color:var(--accent);margin-right:.3em}
.gt .rd-vplayer{margin:6px 0 10px 40px}
@media (max-width:600px){ .gt-x{padding-left:10px} .gt .rd-vplayer{margin-left:0} .gt-head{flex-direction:column} }

/* ─── Bibelhandbuch: Recherche ─── */
.gw-view{display:flex;flex-direction:column;min-height:0}
.research .rs-left > .gw-view{flex:1 1 auto;min-height:0}
.research .gw-res{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.gw-hero-c{display:flex;gap:14px;align-items:center;padding:12px;border-radius:16px;background:linear-gradient(135deg,var(--gw-cyan),var(--surface));border:1px solid var(--border)}
.gw-hero-c img{width:64px;height:82px;object-fit:cover;border-radius:8px;box-shadow:0 4px 14px -6px rgba(0,0,0,.4);flex:none}
.gw-hero-c > div{display:flex;flex-direction:column;gap:3px;min-width:0}
.gw-hero-c b{font-family:var(--font-read);font-size:1.08rem;line-height:1.25;color:var(--gw-ink)}
.gw-gl{margin:12px 2px 6px;display:flex;align-items:center;gap:5px}
.gw-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.gw-bk{display:flex;align-items:center;gap:8px;padding:6px;border-radius:12px;border:1px solid var(--border);background:var(--surface);text-align:left;font:inherit;color:var(--text-3);min-width:0;opacity:.62}
.gw-bk.on{opacity:1;cursor:pointer;color:var(--text);transition:border-color .15s,box-shadow .15s,transform .15s}
.gw-bk.on:hover{border-color:var(--gw-or);box-shadow:var(--shadow-sm);transform:translateY(-1px)}
.gw-bk.sel{border-color:var(--gw-or);background:var(--gw-or-soft)}
.gw-bk img{width:40px;height:40px;border-radius:9px;object-fit:cover;object-position:center 12%;flex:none;background:var(--gw-cyan)}
.gw-bk-n{width:40px;height:40px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--surface-2);font-weight:800;font-size:.8rem;color:var(--text-3)}
.gw-bk-t{display:flex;flex-direction:column;min-width:0}
.gw-bk-t b{font-size:.86rem;font-weight:650;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gw-bk-t i{font-style:normal;font-size:.7rem;line-height:1.3;color:var(--text-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gw-bx,.gw-sr{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid transparent;background:none;border-radius:12px;padding:8px 10px;font:inherit;color:var(--text);cursor:pointer}
.gw-bx:hover,.gw-sr:hover{background:var(--surface-2);border-color:var(--border)}
.gw-bx.sel,.gw-sr.sel{background:var(--gw-or-soft)}
.gw-bx b{flex:1;font-weight:600;font-size:.9rem;line-height:1.3}
.gw-bx i{font-style:normal;font-size:.74rem;color:var(--text-3)}
.gw-sr{flex-direction:column;align-items:flex-start;gap:3px}
.gw-sr b{font-size:.88rem}
.gw-sr b span{font-weight:500;color:var(--text-3)}
.gw-sr p{margin:0;font-size:.82rem;line-height:1.45;color:var(--text-2);font-family:var(--font-read)}
.gw-lbl{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:2.6em;padding:2px 7px;border-radius:6px;background:var(--gw-teal);color:#fff;font-family:var(--font-ui);font-size:.72rem;font-weight:800;letter-spacing:.02em;flex:none;line-height:1.35}
[data-theme="dark"] .gw-lbl,[data-theme="oled"] .gw-lbl{color:#06292b}

.gw-bk.big{padding:8px;opacity:1}
.gw-bk.big img,.gw-bk.big .gw-bk-n{width:58px;height:58px;border-radius:11px}
.gw-bk.big .gw-bk-t small{font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gw-or)}
.gw-bk.big .gw-bk-t b{font-family:var(--font-read);font-size:1rem}
.gw-bk.big .gw-bk-t i{-webkit-line-clamp:3}
.gw-books:has(.big){grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.gw-canon{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:4px}
.gw-cn{display:flex;flex-direction:column;align-items:center;gap:0;padding:5px 2px;border-radius:9px;border:1px solid var(--border);background:var(--surface);font:inherit;font-size:.74rem;font-weight:650;color:var(--text-3);opacity:.6;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gw-cn i{font-style:normal;font-size:.6rem;font-weight:700;color:var(--text-3)}
.gw-cn.on{opacity:1;cursor:pointer;color:var(--text);border-color:rgba(196,88,31,.4);box-shadow:inset 0 -3px 0 var(--gw-or)}
.gw-cn.on:hover{background:var(--gw-or-soft)}
.gw-cn.sel{background:var(--gw-or-soft)}
/* Überschriften im Wortlaut einer Quelle klein halten (z. B. „AARON“ aus den Einsichten) */
.gt-w :is(h1,h2,h3,h4),.gd-x.html :is(h1,h2,h3,h4){font-family:var(--font-ui);font-size:.82em;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:.2em 0 .5em;padding:0;border:0}
.gt-w .rd-fig,.gd-x.html .rd-fig{display:none}

/* ─── Karte eines Bibelbuchs (Bibel, Studienfenster, Seitenbereich) ─── */
.gw-side{margin-top:12px}
.gw-card{display:flex;gap:12px;padding:12px;border-radius:14px;border:1px solid var(--border);background:linear-gradient(160deg,var(--gw-cyan),var(--surface) 70%);box-shadow:var(--shadow-sm)}
.gw-card-i{width:64px;height:64px;border-radius:12px;object-fit:cover;object-position:center 10%;flex:none;cursor:pointer;background:var(--gw-cyan)}
.gw-card-b{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.gw-card-t{font-family:var(--font-read);font-size:1.12rem;line-height:1.2;color:var(--gw-ink);cursor:pointer}
.gw-card-f{margin:0;font-size:.8rem;line-height:1.45;color:var(--text-2)}
.gw-card-f span{font-weight:800;color:var(--gw-or);text-transform:uppercase;font-size:.7rem;letter-spacing:.04em}
.gw-card-facts{display:flex;flex-direction:column;gap:2px;margin-top:2px}
.gw-card-facts span{font-size:.74rem;color:var(--text-2);line-height:1.35}
.gw-card-facts i{font-style:normal;font-weight:700;color:var(--text-3);margin-right:5px}
.gw-card-a{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
.gw-card.compact{padding:9px}
.gw-card.compact .gw-card-i{width:46px;height:46px}
.bsel .gw-card{flex-direction:column}
.bsel .gw-card-i{width:100%;height:150px;object-position:center 18%}
.gw-soon{display:flex;gap:6px;align-items:flex-start;margin-top:12px;padding:8px 10px;border-radius:10px;background:var(--surface-2);color:var(--text-3);line-height:1.4}
.gw-soon .ico{flex:none;margin-top:1px}
.book-grid button.gw-has{border-color:rgba(196,88,31,.35);box-shadow:inset 3px 0 0 var(--gw-or)}
.gw-vbook{margin:0 0 6px}
.gw-hit{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);margin-bottom:8px}
.gw-hit-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin-bottom:4px;font-family:var(--font-ui);font-size:.86em}
.gw-hit-h b{color:var(--gw-or)}
.gw-hit-h span{color:var(--text-3)}
.gw-hit-t{font-size:.95em;line-height:1.6;color:var(--text)}
.gw-vdlg,.gw-pv{font-size:calc(1rem * var(--z-study,1))}

/* ─── Kapitel im Artikel-Leser (Layout der Publikation) ─── */
.reader .gw{--gw-gut:clamp(14px,3vw,26px)}
.reader .gw-head{margin:0 0 0}
.reader .gw-hero{position:relative;background-size:cover;background-position:center bottom;border-radius:18px 18px 0 0;min-height:clamp(150px,26vw,230px);padding:var(--gw-gut) var(--gw-gut) 18px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background-color:var(--gw-cyan)}
.reader .gw-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 30%,rgba(229,243,245,.88) 100%);pointer-events:none}
[data-theme="dark"] .reader .gw-hero::after,[data-theme="oled"] .reader .gw-hero::after{background:linear-gradient(180deg,rgba(0,0,0,.05) 20%,rgba(22,38,43,.94) 100%)}
.reader .gw-hero > *{position:relative;z-index:1}
.reader .gw-hero .gw-ctx{margin:0 0 2px;font-family:var(--font-ui);font-size:.74em;letter-spacing:.12em;color:var(--gw-or)}
.reader .gw-hero h1{margin:0;padding:0;border:0;font-size:clamp(1.9em,5vw,2.6em);color:var(--gw-ink)}
.reader .gw-open{background:var(--gw-cyan);border-radius:0 0 18px 18px;padding:12px var(--gw-gut) 14px;margin:0 0 1.6em;display:flow-root;font-family:var(--font-ui);font-size:.92em}
.reader .gw-open > p,.reader .gw-fact > p{margin:.35em 0}
.reader .gw-fact{border-top:1px solid rgba(31,42,51,.18);padding-top:.35em;margin-top:.35em}
[data-theme="dark"] .reader .gw-fact,[data-theme="oled"] .reader .gw-fact{border-top-color:rgba(255,255,255,.12)}
.reader .gw-k{font-size:.82em;letter-spacing:.04em;color:var(--text-2)}
.reader .gw-k.or{color:var(--gw-or)}
.reader .gw-float{float:right;width:38%;max-width:240px;margin:.4em 0 .6em 1em}
.reader .gw-float .rd-fig{margin:0}
.reader .gw-float img{border-radius:12px}
.reader .gw-open .gw-box{clear:both;background:var(--surface);margin:12px 0 2px}
.reader .gw h2{font-family:var(--font-read);color:var(--gw-or);border-left-color:var(--gw-or)}
.reader .gw h3{color:var(--gw-teal)}
.reader .gw p.qu{border-left-color:var(--gw-or);background:var(--gw-or-soft)}
.reader .gw-box{position:relative;border-radius:16px;background:var(--gw-warm);border:1px solid var(--border);margin:1.4em 0;overflow:hidden;font-size:.96em}
.reader .gw-box.flash{animation:flash 1.6s var(--ease)}
.reader .gw-box-h{padding:12px 16px 8px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.35),transparent)}
[data-theme="dark"] .reader .gw-box-h,[data-theme="oled"] .reader .gw-box-h{background:none}
.reader .gw-box-h h2{margin:0;padding:0;border:0;font-family:var(--font-ui);font-size:.9em;letter-spacing:.05em;color:var(--gw-or);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.reader .gw-box-h .gw-lbl{font-size:.78em}
.reader .gw-box > .rd-fig,.reader .gw-box-c > .rd-fig{margin:10px 14px}
.reader .gw-box-c{padding:0}
.reader .gw-box-c > p,.reader .gw-box-c > .gw-cols{padding:0 16px}
.reader .gw-box.plain{background:var(--surface-2)}
.reader details.gw-det{margin:0}
.reader details.gw-det > summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:10px 16px;font-family:var(--font-ui);font-size:.86em;font-weight:650;color:var(--info);-webkit-tap-highlight-color:transparent}
.reader details.gw-det > summary::-webkit-details-marker{display:none}
.reader details.gw-det > summary::before{content:'';width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s;flex:none}
.reader details.gw-det[open] > summary::before{transform:rotate(225deg) translateY(-2px)}
.reader details.gw-det > summary:hover{background:rgba(58,111,196,.06)}
.reader .gw-hide{display:none}
.reader details[open] > summary .gw-show{display:none}
.reader details[open] > summary .gw-hide{display:inline}
.reader .gw-det-c{padding:4px 16px 12px;border-top:1px dashed var(--border)}
.reader .gw-det-c p{margin:.45em 0}
.reader .gw-tbl{overflow-x:auto;margin:.4em 0 .6em;-webkit-overflow-scrolling:touch}
.reader .gw-tbl table{width:100%;border-collapse:collapse;font-size:.93em}
.reader .gw-tbl td{padding:8px 10px;vertical-align:top;border-right:1px solid var(--border)}
.reader .gw-tbl td:last-child{border-right:0}
.reader .gw-tbl td:first-child{white-space:nowrap;width:1%;font-family:var(--font-ui)}
.reader .gw-tbl tr.alt{background:rgba(31,42,51,.045)}
[data-theme="dark"] .reader .gw-tbl tr.alt,[data-theme="oled"] .reader .gw-tbl tr.alt{background:rgba(255,255,255,.04)}
.reader .gw-tbl td p{margin:0}
.reader .gw-quote{margin:1.3em 0;padding:4px 0 4px 18px;border-left:4px solid var(--gw-or);background:none;border-radius:0;color:var(--gw-teal);font-family:var(--font-read);font-size:1.12em;font-style:italic;line-height:1.5}
.reader .gw-quote p{margin:0}
.reader .gw-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;align-items:center;margin:.6em 0}
.reader .gw-bgsec{position:relative;margin:2em calc(var(--gw-gut) * -0.4) 1em;padding:calc(var(--gw-gut) + 70px) var(--gw-gut) 14px;border-radius:18px;background-color:var(--gw-warm);background-size:100% auto;background-repeat:no-repeat;background-position:center top}
.reader .gw-bgsec > h2{margin-top:0;background:var(--gw-warm);display:inline-block;padding:8px 14px;border-radius:10px;border-left:0;border-top:6px solid var(--gw-or)}
.reader ol.gw-src{list-style:none;padding:0;margin:.8em 0 0;counter-reset:none}
.reader ol.gw-src > li{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:10px 14px 4px;margin:0 0 12px;box-shadow:var(--shadow-sm)}
.reader ol.gw-src > li > p{font-family:var(--font-ui);font-size:.9em;letter-spacing:.04em;color:var(--gw-or);margin:.2em 0 .5em}
.reader ol.gw-src2{list-style:none;padding:0;margin:0}
.reader ol.gw-src2 > li{margin:0 0 .4em}
.reader ol.gw-src2 > li > p{margin:.3em 0}
.reader .gw-bul{font-family:var(--font-ui);font-weight:800;color:var(--gw-or);margin-right:.2em}
.reader ol.gw-plain{list-style:none;padding:0}
.reader .gw-fns{margin-top:1.6em;padding-top:.8em;border-top:1px solid var(--border);font-size:.86em;color:var(--text-2)}
.reader .gw-fn p{margin:.3em 0}
.reader .gw-fnsym{font-family:var(--font-ui);font-weight:800;color:var(--accent);margin-right:.3em}
.reader sup.fnm[data-fn]{cursor:pointer;color:var(--accent);font-family:var(--font-ui);font-weight:800;padding:0 .15em;border-radius:4px}
.reader sup.fnm[data-fn]:hover{background:var(--accent-soft)}
.gw-fnpop{font-size:.92rem;line-height:1.55;max-width:420px}
.gw-fnpop p{margin:0}
.reader a.gw-jump{font-weight:650;border-bottom-style:solid}
.reader .gw-fig img{background:var(--surface-2)}
.reader .gw-si{font-family:var(--font-ui);font-size:.86em;color:var(--text-2);margin:.2em 0}
.reader .gw-cover{font-size:1.4em}
.gw-nav{display:flex;justify-content:space-between;gap:10px;margin:2em 0 .5em;padding-top:1em;border-top:1px solid var(--border);font-family:var(--font-ui)}
.gw-nav a{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--border)!important;border-radius:14px;background:var(--surface);color:var(--text)!important;max-width:48%}
.gw-nav a:hover{border-color:var(--gw-or)!important}
.gw-nav span{display:flex;flex-direction:column;line-height:1.25;font-weight:650}
.gw-nav i{font-style:normal;font-size:.72em;font-weight:600;color:var(--text-3)}
.gw-nav-n{margin-left:auto;text-align:right}
@media (max-width:600px){ .reader .gw-float{width:42%} .reader .gw-tbl td:first-child{white-space:normal} }

/* ─── Eigene Antworten in Antwortfeldern ─── */
.reader .ans.edit{cursor:pointer;transition:border-color .15s,background .15s}
.reader .ans.edit:hover{border-color:rgba(var(--accent-rgb),.45);color:var(--text-2)}
.reader .ans.edit .ans-ph{display:inline-flex;align-items:center;gap:6px}
.reader .ans.mine{position:relative;border:1px solid rgba(79,122,90,.35);border-left:4px solid var(--leaf);background:rgba(79,122,90,.08);color:var(--text);font-size:.95em;padding:8px 34px 8px 14px}
.reader .ans.mine .ans-ed{position:absolute;right:8px;top:8px;color:var(--text-3)}
.reader .ans.editing{border:1px solid var(--accent);background:var(--surface);padding:8px;cursor:default}
.reader .ans .ans-in{width:100%;min-height:72px;font-family:var(--font-read);font-size:1.1em;line-height:1.5;resize:vertical}
.reader .ans-bar{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:6px}
.reader .ans-bar .small{margin-right:auto}

/* ─── Diensttreffs ─────────────────────────────────────────────────────── */
/* Farbe je Art (Symbol, Leiste, Vorschlagskarten) */
.a-praktisch{--tc:47,143,91}.a-lmd{--tc:196,82,110}.a-th{--tc:58,111,196}.a-vorbild{--tc:142,96,40}
.a-lehrpunkt{--tc:181,138,53}.a-gleichnis{--tc:122,82,178}.a-werkzeug{--tc:46,125,140}.a-dienstzweig{--tc:184,112,79}
.a-einwand{--tc:196,58,58}.a-thema{--tc:63,94,156}.a-aktuell{--tc:52,90,120}.a-saison{--tc:199,129,28}
.a-ermunterung{--tc:214,150,40}.a-organisation{--tc:90,100,116}.a-bibelkurs{--tc:79,122,90}.a-rueckbesuch{--tc:40,140,160}.a-kurz{--tc:110,110,130}

.tr-head p{max-width:86ch}
.badge.new{background:var(--ok);color:#fff}

/* Vorschläge */
.tr-sug:empty{display:none}
.tr-sug{margin-bottom:14px}
.tr-sug-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.tr-sug-h b{display:inline-flex;align-items:center;gap:6px;font-size:.92rem}
.tr-sug-h b .ico{color:var(--gold)}
.tr-sug-h .small{flex:1;min-width:180px}
.tr-sug-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tr-sc{display:flex;flex-direction:column;gap:5px;text-align:left;padding:12px 14px 12px 16px;border-radius:var(--r);border:1px solid var(--border);background:linear-gradient(135deg,rgba(var(--tc,184,112,79),.1),var(--surface) 70%);cursor:pointer;color:var(--text);font:inherit;position:relative;overflow:hidden;transition:transform .15s var(--ease),box-shadow .15s}
.tr-sc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:rgb(var(--tc,184,112,79))}
.tr-sc:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.tr-sc b{font-size:.9rem;line-height:1.35}
.tr-sc-k{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:rgb(var(--tc,184,112,79))}
.tr-sc-m{font-size:.75rem;color:var(--text-3)}

/* Liste + Detail nebeneinander */
.trv{--tr-h:calc(100vh - 250px);display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:20px;align-items:stretch}
.tr-left{display:flex;flex-direction:column;gap:8px;height:var(--tr-h);min-height:0;min-width:0}
.tr-left > *{flex:none}
.tr-filters{display:flex;flex-direction:column;gap:7px}
.tr-strow{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.tr-strow .select{width:auto;flex:1 1 90px;min-width:0}
.tr-sels{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tr-sels .select{width:auto;max-width:100%;flex:1 1 130px;min-width:0}
.tr-sels .select.on{border-color:var(--accent);background-color:rgba(var(--accent-rgb),.07);color:var(--text)}
.tr-reset{flex:none}
.tr-bar{display:flex;gap:8px;align-items:center;justify-content:space-between}
.tr-bar .select{width:auto}
.tr-list{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px}
.tr-i{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:12px;cursor:pointer;outline:none;transition:background .15s}
.tr-i + .tr-i{border-top:1px solid var(--border)}
.tr-i:hover{background:var(--surface-2)}
.tr-i.on{background:rgba(var(--accent-rgb),.1);border-top-color:transparent}
.tr-i.on + .tr-i{border-top-color:transparent}
.tr-i:focus-visible{box-shadow:inset 0 0 0 2px rgba(var(--accent-rgb),.6)}
.tr-ic{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:rgba(var(--tc,184,112,79),.13);color:rgb(var(--tc,184,112,79))}
.tr-ic .ico{width:19px;height:19px}
.tr-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.tr-b > b{font-size:.93rem;line-height:1.35;font-weight:650}
.tr-m{font-size:.76rem;color:var(--text-3);display:flex;align-items:center;flex-wrap:wrap}
.tr-dot{margin:0 5px;opacity:.8}
.tr-ref{color:var(--text-2);font-weight:560}
.tr-fl{display:flex;flex-wrap:wrap;gap:5px;align-items:center}
.tr-fl:empty{display:none}
.tr-fl .chip .ico{width:11px;height:11px}
.tr-used{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:620;padding:2px 8px;border-radius:999px;font-variant-numeric:tabular-nums}
.tr-used .ico{width:12px;height:12px}
.tr-used.me{background:rgba(47,143,91,.13);color:var(--ok)}
.tr-used.cong{background:rgba(58,111,196,.12);color:var(--info)}
.tr-used.none{background:var(--surface-3);color:var(--text-2)}
.tr-fav{display:inline-flex;color:var(--gold)}
.tr-fav .ico{width:14px;height:14px;fill:currentColor}
.tr-more{display:flex;margin:10px auto 6px}

.tr-right{height:var(--tr-h);overflow:auto;overscroll-behavior:contain;padding:0;min-width:0}
.tr-right > .empty{margin:auto;height:100%;display:flex;flex-direction:column;justify-content:center}
.tr-empty p{max-width:52ch;margin-left:auto;margin-right:auto}

/* Ein Treff */
.tr-doc{padding:20px 24px 28px;position:relative}
.tr-doc::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,rgb(var(--tc,184,112,79)),rgba(var(--tc,184,112,79),.15))}
.tr-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.78rem}
.tr-kind{display:inline-flex;align-items:center;gap:5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:rgb(var(--tc,184,112,79))}
.tr-cat{color:var(--text-3)}
.tr-time{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;background:var(--surface-3);color:var(--text-2);font-weight:650;font-variant-numeric:tabular-nums}
.tr-title{font-family:var(--font-display);font-size:1.5rem;line-height:1.25;margin:8px 0 8px}
.tr-status{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.tr-status .chip .ico{width:12px;height:12px}
.tr-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.tr-chips .chip .ico{width:12px;height:12px}
.tr-acts{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0 4px;border-bottom:1px solid var(--border);margin-bottom:6px}
.tr-acts .btn.icon.on{color:var(--gold);border-color:rgba(181,138,53,.45);background:rgba(181,138,53,.1)}
.tr-acts .btn.icon.on .ico{fill:currentColor}
.tr-sec{margin-top:16px}
.tr-sec h4{display:flex;align-items:center;gap:7px;margin:0 0 6px;font-size:.74rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;padding:3px 4px;margin-left:-4px;transition:background var(--dur)}
.tr-sec h4:hover{background:var(--surface-3)}
.tr-sec h4:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.tr-secx{margin-left:auto;display:inline-flex;color:var(--text-3);transition:transform var(--dur)}
.tr-secx .ico{width:15px;height:15px}
.tr-sec.off .tr-secx{transform:rotate(-90deg)}
.tr-sec.off .tr-secb,.tr-sec.off .tr-mhint{display:none}
.tr-sec.off h4{color:var(--text-2);opacity:.75}
@media print{.tr-secx{display:none}.tr-sec.off .tr-secb{display:block}}
.tr-sec h4 .ico{width:14px;height:14px;color:rgb(var(--tc,184,112,79))}
.tr-sec p{margin:0;line-height:1.62;font-size:.98rem}
.tr-sec ul{margin:0;padding-left:1.25em;line-height:1.6}
.tr-sec li + li{margin-top:4px}
.tr-e p{font-size:1.04rem}
.tr-bib{padding:14px 16px;border-radius:var(--r);background:var(--bible-bg);border:1px solid rgba(var(--accent-rgb),.18)}
.tr-l,.tr-after{font-size:.95rem!important}
.tr-l span,.tr-after span{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:2px}
.tr-verse{margin:10px 0}
.tr-vtext{margin-top:8px;font-family:var(--font-editor);font-size:1rem;line-height:1.6;color:var(--text);padding-left:12px;border-left:3px solid rgba(var(--accent-rgb),.45)}
.tr-after{margin-top:8px!important}
.tr-qs{padding:14px 16px;border-radius:var(--r);background:rgba(196,58,58,.05);border:1px solid rgba(196,58,58,.15)}
.tr-qs h4 .ico{color:var(--danger)}
.tr-qhint{margin:-2px 0 10px!important;font-size:.8rem!important}
.tr-q-i{display:flex;gap:10px;align-items:flex-start}
.tr-q-i + .tr-q-i{margin-top:12px}
.tr-q-n{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--danger);color:#fff;font-weight:750;font-size:.82rem}
.tr-q-b{flex:1;min-width:0}
.tr-q-b > b{display:block;color:var(--danger);font-size:1rem;line-height:1.45}
.tr-ans{margin-top:5px;font-size:.88rem}
.tr-ans summary{cursor:pointer;color:var(--text-3);font-size:.8rem;font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:5px}
.tr-ans summary::-webkit-details-marker{display:none}
.tr-ans summary::before{content:"▸";transition:transform .15s}
.tr-ans[open] summary::before{transform:rotate(90deg)}
.tr-ans ul{margin:5px 0 0;color:var(--text-2)}
.tr-demo{padding:12px 14px;border-radius:var(--r);background:var(--surface-2)}
.tr-t{padding:14px 16px;border-radius:var(--r);background:rgba(47,143,91,.08);border:1px solid rgba(47,143,91,.22)}
.tr-t h4,.tr-t h4 .ico{color:var(--ok)}
.tr-t p{font-weight:560}
.tr-s p{font-style:italic}
/* Erfahrung aus unseren Publikationen */
.tr-x{padding:14px 16px;border-radius:var(--r);background:rgba(176,128,45,.07);border:1px solid rgba(176,128,45,.22)}
.tr-x h4,.tr-x h4 .ico{color:#9a6e22}
.tr-xq{margin:0;font-family:var(--font-editor);font-size:.98rem;line-height:1.62;color:var(--text);padding-left:12px;border-left:3px solid rgba(176,128,45,.5)}
.tr-xsrc{margin-top:9px;max-width:100%;white-space:normal;text-align:left;line-height:1.35}
/* Bilder und Videos: direkt im Treff, antippen = Vollbild */
.tr-mhint{margin-left:auto;font-size:.68rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--text-3)}
.tr-mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.tr-mgrid.one{grid-template-columns:minmax(0,1fr)}
.tr-mf{margin:0;cursor:zoom-in;border-radius:var(--r);overflow:hidden;background:var(--surface-2);border:1px solid var(--border);transition:transform .15s,box-shadow .15s}
.tr-mf.v{cursor:pointer}
.tr-mf:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.12)}
.tr-mf:focus-visible{outline:2px solid rgb(var(--accent-rgb));outline-offset:2px}
.tr-mbox{position:relative;aspect-ratio:16/9;background:#11151a;display:grid;place-items:center;overflow:hidden}
.tr-mgrid.one .tr-mbox{aspect-ratio:auto;max-height:420px;min-height:180px}
.tr-mbox img{width:100%;height:100%;object-fit:cover;display:block}
.tr-mgrid.one .tr-mbox img{object-fit:contain;max-height:420px}
.tr-mph{color:rgba(255,255,255,.45)}
.tr-mph .ico{width:34px;height:34px}
.tr-mplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.55);color:#fff;backdrop-filter:blur(4px);transition:transform .15s,background .15s}
.tr-mplay .ico{width:24px;height:24px;margin-left:3px;fill:currentColor}
.tr-mf:hover .tr-mplay{transform:translate(-50%,-50%) scale(1.08);background:rgba(0,0,0,.7)}
.tr-mdur{position:absolute;right:8px;bottom:8px;padding:2px 7px;border-radius:6px;background:rgba(0,0,0,.65);color:#fff;font-size:.72rem;font-weight:650}
.tr-mf figcaption{padding:8px 10px;font-size:.84rem;line-height:1.4;color:var(--text-2)}
.tr-mf.bad{cursor:default}
.tr-mf.bad:hover{transform:none;box-shadow:none}
.tr-mbad{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;text-align:center;color:rgba(255,255,255,.75);font-size:.84rem}
.tr-mbad .ico{width:26px;height:26px;opacity:.6}
.tr-fms{display:flex;flex-direction:column;gap:5px}
.tr-fm{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--r-sm);background:var(--surface-2);font-size:.86rem}
.tr-fm .ellipsis{flex:1;min-width:0}
.tr-end{margin-top:18px;padding-top:12px;border-top:1px dashed var(--border);display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--text-3)}
.tr-end .ico{width:14px;height:14px}
.tr-hist ul{list-style:none;padding:0}
.tr-hist li{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;border-bottom:1px solid var(--border);font-size:.88rem}
.tr-hist li .small{flex-basis:100%;color:var(--text-2)}
.tr-hist li .btn{margin-left:auto}

/* Bearbeiten / KI */
.tr-form-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.tr-form-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.tr-fqs{display:flex;flex-direction:column;gap:8px;margin-bottom:6px}
.tr-fq{display:flex;flex-direction:column;gap:5px;padding:9px;border-radius:var(--r-sm);background:var(--surface-2)}
.tr-fq [data-fq]{font-weight:600;color:var(--danger)}
.tr-form-time{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2);margin-top:6px}
.tr-form-time .ico{width:14px;height:14px}
.ok-t{color:var(--ok);font-weight:650}
.warn-t{color:var(--warn,#b8650a);font-weight:650}
.tr-ai .tr-ideas .chip{font-size:.78rem}
.tr-modal .modal-b{padding:0}
.tr-prev .tr-doc{padding:6px 2px 4px}
.tr-prev .tr-doc::before{display:none}

[data-theme="dark"] .tr-used.me,[data-theme="oled"] .tr-used.me{background:rgba(47,143,91,.22);color:#7fd1a2}
[data-theme="dark"] .tr-used.cong,[data-theme="oled"] .tr-used.cong{background:rgba(58,111,196,.22);color:#9dbcf0}
[data-theme="dark"] .tr-qs,[data-theme="oled"] .tr-qs{background:rgba(196,58,58,.1)}
[data-theme="dark"] .tr-q-b > b,[data-theme="oled"] .tr-q-b > b{color:#f08a8a}
[data-theme="dark"] .tr-t,[data-theme="oled"] .tr-t{background:rgba(47,143,91,.13)}
[data-theme="dark"] .tr-t h4,[data-theme="dark"] .tr-t h4 .ico,[data-theme="oled"] .tr-t h4,[data-theme="oled"] .tr-t h4 .ico{color:#7fd1a2}
[data-theme="dark"] .tr-x,[data-theme="oled"] .tr-x{background:rgba(176,128,45,.12)}
[data-theme="dark"] .tr-x h4,[data-theme="dark"] .tr-x h4 .ico,[data-theme="oled"] .tr-x h4,[data-theme="oled"] .tr-x h4 .ico{color:#e0b46a}
[data-theme="dark"] .tr-kind,[data-theme="oled"] .tr-kind,[data-theme="dark"] .tr-sc-k,[data-theme="oled"] .tr-sc-k,[data-theme="dark"] .tr-ic,[data-theme="oled"] .tr-ic{filter:brightness(1.35)}

@media (max-width:1200px){ .tr-sug-row{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:1024px){
  .trv{grid-template-columns:minmax(0,1fr)}
  .tr-left{height:auto}
  .tr-list{max-height:none;overflow:visible}
  .tr-right{display:none}
}
@media (max-width:640px){
  .tr-sug-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
  .tr-sc{flex:0 0 78%;scroll-snap-align:start}
  .tr-i{padding:10px 6px;gap:10px}
  .tr-ic{width:34px;height:34px}
  .tr-doc{padding:16px 14px 22px}
  .tr-title{font-size:1.3rem}
  .tr-sels .select{flex:1 1 45%}
  .tr-form-g,.tr-form-g2{grid-template-columns:minmax(0,1fr)}
  .tr-bib,.tr-qs,.tr-t,.tr-x{padding:12px}
  .tr-mgrid{grid-template-columns:minmax(0,1fr)}
}

/* ════════════════════════════════════════════════════════════════════════
   Hirtenbesuche: Übersicht, Personen, Besuche, Vorschläge, Blatt (A5)
   ════════════════════════════════════════════════════════════════════════ */
.hb-tabs{margin-bottom:16px}
.hb-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.hb-kpis .stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 16px;box-shadow:var(--shadow-sm)}
.hb-kpis .stat small{font-size:.9rem;color:var(--text-3);font-weight:500}
.hb-kpis .stat.warn .n{color:var(--danger)}
.hb-bar{height:6px;border-radius:99px;background:var(--surface-3);margin-top:8px;overflow:hidden}
.hb-bar i{display:block;height:100%;background:var(--accent);border-radius:inherit}
.hb-cols{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}
.hb-start{padding:18px 20px;margin-bottom:18px}
.hb-start h3{display:flex;gap:8px;align-items:center;margin:0 0 8px}
.hb-start ol{margin:0 0 14px;padding-left:20px;line-height:1.6}
.hb-empty{padding:6px 2px 10px}
.hb-due,.hb-vrow{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);margin-bottom:8px;cursor:pointer;transition:border-color .15s,background .15s}
.hb-due:hover,.hb-vrow:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--surface-2)}
.hb-vrow.late{border-left:3px solid var(--danger)}
.hb-due-b,.hb-vrow-b{flex:1;min-width:0}
/* Knöpfe von rechts aufbauen: der Kalender steht in jeder Zeile an derselben Stelle,
   weitere Symbole reihen sich links davon ein */
.hb-due-a{display:flex;flex-direction:row-reverse;gap:4px;flex:none;align-items:center}
.hb-av{width:38px;height:38px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:700;font-size:.82rem;background:var(--accent-soft);color:var(--accent);letter-spacing:.02em}
.hb-av.sm{width:30px;height:30px;font-size:.72rem}
.hb-av.lg{width:56px;height:56px;font-size:1.05rem}
.hb-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.hb-month{font-weight:700;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:14px 2px 6px}
.hb-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.hb-tools .input-ico{flex:1 1 220px;min-width:180px}
.hb-tools .hb-psort{width:auto;flex:none}
.hb-tools-r{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.hb-pn{display:flex;gap:10px;align-items:flex-start}
.hb-act{white-space:nowrap;text-align:right}.hb-act .btn{margin-left:3px}
.hb-ptab tr{cursor:pointer}
.hb-ptab tbody tr:hover td{background:var(--surface-2)}
.hb-tagpick{display:flex;flex-wrap:wrap;gap:5px}
.hb-tagpick .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.hb-pview .hb-ph{display:flex;gap:14px;align-items:flex-start}
.hb-pview .hb-ph>div{flex:1;min-width:0}
.hb-pview h3{margin:0;font-size:1.25rem}
.hb-pfacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}
.hb-pfacts>div{background:var(--surface-2);border-radius:var(--r);padding:8px 10px;display:flex;flex-direction:column;gap:2px;min-width:0}
.hb-pfacts span{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);font-weight:650}
.hb-pfacts b{font-size:.92rem}
.hb-notes{background:var(--surface-2);border-left:3px solid var(--accent);padding:8px 12px;border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:.92rem}
.hb-h4{margin:16px 0 8px;font-size:.95rem}
.hb-hist{margin:0;padding-left:18px}
.hb-tplchip{display:flex;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2)}
.hb-tplchip>div{flex:1;min-width:0}
.hb-picklist{max-height:58vh;overflow:auto;border:1px solid var(--border);border-radius:var(--r);padding:4px}
.hb-person{display:flex;gap:6px;align-items:center;color:var(--text-2);font-weight:600;margin:-4px 0 8px}
.hb-doc .hb-g p,.hb-doc .hb-l p{margin:0 0 8px}
.hb-quote{margin:0 0 10px;padding:10px 14px;border-left:3px solid var(--gold);background:var(--surface-2);border-radius:0 var(--r-sm) var(--r-sm) 0}
.hb-quote p{margin:0 0 6px;font-style:italic;font-family:var(--font-editor)}
.hb-quote footer{font-size:.8rem;color:var(--text-3)}
.linkbtn{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit;display:inline-flex;gap:4px;align-items:center;text-align:left}
.hb-take{font-weight:650;font-size:1.02rem;color:var(--accent)}
.hb-fq li{margin:4px 0}
.hb-regroup .table input.sm{height:30px}
.hb-av.fam{background:color-mix(in srgb,var(--gold) 18%,transparent);color:var(--gold)}
.chip.gold{background:color-mix(in srgb,var(--gold) 16%,transparent);color:var(--gold)}
.hb-roles{display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;color:var(--text-2);margin:-8px 0 14px}
.hb-roles .ico{vertical-align:-2px}
.hb-fams{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:16px}
.hb-fam{padding:12px 14px;cursor:pointer;display:flex;flex-direction:column;gap:10px;transition:border-color .15s}
.hb-fam:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}
.hb-fam-h{display:flex;gap:10px;align-items:flex-start}
.hb-fam-h>div{flex:1;min-width:0}
.hb-fam-m{display:flex;flex-wrap:wrap;gap:6px}
.hb-fam-m label.chip{cursor:pointer}
.hb-fam-m label.chip input{margin:0}
.hb-fam-list{margin-top:6px}
.hb-memlist{max-height:240px;overflow:auto;border:1px solid var(--border);border-radius:var(--r);padding:6px 8px;display:flex;flex-direction:column;gap:4px}
.hb-famsug{display:flex;flex-direction:column;gap:10px}
.hb-fsug{padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.hb-fsug>label{gap:8px}
.hb-flags{display:flex;flex-direction:column;gap:6px;background:var(--surface-2);border-radius:var(--r);padding:10px 12px}
.hb-flags label{gap:8px;align-items:flex-start;font-weight:400;color:var(--text);font-size:.88rem;text-transform:none;letter-spacing:0}
.hb-flags input{margin-top:3px}
.hb-present .hb-fam-m{margin-bottom:4px}
.hb-parts{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.hb-part{border:1px solid var(--border);border-radius:var(--r);padding:8px 10px;background:var(--surface);display:flex;flex-direction:column;gap:6px}
.hb-part-h{display:flex;justify-content:space-between;align-items:center;gap:8px}
@media (max-width:1100px){.hb-cols{grid-template-columns:1fr}}
@media (max-width:760px){.hb-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.hb-pfacts{grid-template-columns:repeat(2,minmax(0,1fr))}.hb-tools-r{margin-left:0}.hb-tools-r .btn span{display:none}.hb-due-a .btn span{display:none}}

/* ─── Blatt zum Mitgeben: Dialog mit Vorschau ─── */
.hbs-modal{width:min(1180px,96vw)!important;max-width:none!important}
.hbs{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:20px;align-items:start}
.hbs-opts{display:flex;flex-direction:column;gap:2px;max-height:72vh;overflow:auto;padding-right:6px}
.hbs-parts{display:grid;grid-template-columns:1fr;gap:3px}
.hbs-parts label{gap:6px}
.hbs-colors{display:flex;gap:10px;flex-wrap:wrap;padding:4px 4px 4px 3px}
.hbs-colors button{width:28px;height:28px;border-radius:50%;border:2px solid transparent;background:var(--c);cursor:pointer;box-shadow:0 0 0 1px var(--border)}
.hbs-colors button.on{border-color:var(--surface);box-shadow:0 0 0 2px var(--c)}
.hbs-edit{border:1px solid var(--border);border-radius:var(--r);padding:6px 10px;margin:6px 0}
.hbs-edit summary{cursor:pointer;font-weight:650;display:flex;gap:6px;align-items:center}
.hbs-prev{position:sticky;top:0;min-width:0}
.hbs-stage{position:relative;overflow:hidden;background:var(--surface-3);border-radius:var(--r);padding:0}
.hbs-fit{margin-top:6px}
.hbs-sheet{display:flex;transform-origin:top left;width:max-content;box-shadow:0 6px 24px rgba(0,0,0,.18)}
.hbs-lines-sel button{min-width:38px}
.hbs-order{display:flex;flex-direction:column;gap:6px}
.hbs-ord{display:flex;gap:8px;align-items:center;padding:6px 8px;border:1px solid var(--border);border-radius:var(--r);cursor:pointer;background:var(--surface)}
.hbs-ord>b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);font-size:.75rem;flex:none}
.hbs-ord.on{border-color:var(--accent);background:var(--accent-soft)}
.hbs-ord.on>b{background:var(--accent);color:#fff}
.hbs-ord .grow{flex:1;min-width:0}
.hbs-ord .grow div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hbs-stage.multi{max-height:74vh;overflow:auto;padding:10px 0}
.hbs-pg{position:relative;margin-bottom:14px}
.hbs-pg:last-child{margin-bottom:0}
.hbs-a[data-ix]{cursor:pointer}
.hbs-a.cur{outline:3px solid var(--accent);outline-offset:-3px}
.hbs-blank{background:#fff}
.hbs-measure{position:fixed;left:-10000px;top:0;visibility:hidden;pointer-events:none}
.hbs-a{--k:1;--acc:#2f7d6d;position:relative;width:148mm;height:210mm;background:#fff;color:#1f1f1f;font-family:"SMP-Lora",Lora,Georgia,"Times New Roman",serif;font-size:calc(10pt * var(--k));line-height:1.28;flex:none}
.hbs-a.sz-gross{font-size:calc(12.2pt * var(--k))}
.hbs-a4 .hbs-a{width:210mm;height:297mm;font-size:calc(11.8pt * var(--k))}
.hbs-a4 .hbs-a.sz-gross{font-size:calc(14.4pt * var(--k))}
.hbs-a.ff-Sans{font-family:"SMP-Sans","Source Sans 3","Segoe UI",Arial,sans-serif}
.hbs-a.ff-Garamond{font-family:"SMP-Garamond","EB Garamond",Garamond,Georgia,serif}
.hbs-a4x2 .hbs-a+.hbs-a{border-left:1px dashed #aaa}
.hbs-in{position:absolute;inset:32pt 32pt 32pt 32pt;overflow:hidden}
.hbs-a4 .hbs-in{inset:46pt}
.hbs-a.fr-fein::before,.hbs-a.fr-doppelt::before{content:"";position:absolute;inset:14pt;border:.8pt solid var(--acc);border-radius:4pt;pointer-events:none}
.hbs-a.fr-doppelt::after{content:"";position:absolute;inset:18pt;border:.4pt solid var(--acc);border-radius:3pt;pointer-events:none}
.hbs-k{font-family:"SMP-Sans","Source Sans 3","Segoe UI",Arial,sans-serif;font-size:.9em;color:var(--acc);letter-spacing:.04em;margin-bottom:2pt}
.hbs-a h1{font-size:1.7em;line-height:1.12;margin:0 0 .45em;font-weight:700;color:#1f1f1f;font-family:inherit}
.hbs-a h2{font-family:"SMP-Sans","Source Sans 3","Segoe UI",Arial,sans-serif;font-size:.86em;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);margin:.9em 0 .3em;font-weight:700}
.hbs-a p{margin:0 0 .4em}
.hbs-v{border-left:3pt solid var(--acc);padding:2pt 0 2pt 7pt;margin-bottom:.4em}
.hbs-v p{font-style:italic;margin:0}
.hbs-v span,.hbs-q span{display:block;font-family:"SMP-Sans","Source Sans 3","Segoe UI",Arial,sans-serif;font-weight:700;font-size:.85em;color:var(--acc);margin-top:2pt}
.hbs-q{margin:.6em 6pt .4em 10pt;color:#333;font-size:.94em}
.hbs-q p{font-style:italic;margin:0}
.hbs-q span{color:#666;font-weight:400;font-size:.8em}
.hbs-a ul{margin:0;padding-left:1.2em;font-size:.96em}
.hbs-t{border:.8pt solid var(--acc);color:var(--acc);font-weight:700;text-align:center;padding:6pt 8pt;margin:.8em 0 .2em;font-size:1.04em}
.hbs-pos{font-style:italic;font-size:1.04em}
.hbs-lines i{display:block;border-bottom:.5pt solid #b5b5b5;height:1.7em}
.hbs-f{font-family:"SMP-Sans","Source Sans 3","Segoe UI",Arial,sans-serif;font-size:.8em;color:#666;margin-top:1em}
@media (max-width:900px){.hbs{grid-template-columns:1fr}.hbs-opts{max-height:none}.hbs-prev{position:static}}
/* weitere Vorschläge, Bilder & Videos per Link */
.hb-more .hb-tplchip{margin-top:6px}
.hb-mlist{display:flex;flex-direction:column;gap:6px}
.hb-mrow{display:flex;gap:8px;align-items:center;padding:6px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2);min-width:0}
.hb-mrow .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.hb-mth{width:64px;height:44px;flex:none;border-radius:6px;background:var(--surface-3);display:grid;place-items:center;overflow:hidden;color:var(--text-3)}
.hb-mth img{width:100%;height:100%;object-fit:cover;display:block}
.hb-mth.bad{outline:2px solid var(--danger);outline-offset:-2px;color:var(--danger)}
.seg.xs button{padding:3px 7px;font-size:.74rem}
/* Beim Besuch */
.hb-vs-modal .modal-b{padding-top:0}
.hb-vshow{font-size:1.04rem}
.hb-vs-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;padding:12px 0 10px}
.hb-vs-head h3{margin:0 0 2px;font-size:1.2rem}
.hb-vs-nav{position:sticky;top:0;z-index:3;display:flex;gap:6px;overflow-x:auto;padding:8px 0;background:var(--surface);border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;scrollbar-width:none}
.hb-vs-nav::-webkit-scrollbar{display:none}
.hb-vs-nav .chip{flex:none;white-space:nowrap;max-width:70vw;overflow:hidden;text-overflow:ellipsis}
.hb-vs-item{scroll-margin-top:56px;padding:14px 0;border-bottom:1px solid var(--border)}
.hb-vs-item:last-child{border-bottom:0}
.hb-vs-item .tr-doc{padding:0}
/* in „Beim Besuch“ steht der Vorschlag ohne eigene Karte – dort kein farbiger Balken */
.hb-vs-item .tr-doc::before{display:none}
.hb-vs-item .tr-top{margin-bottom:2px}
.hb-doc .tr-time{margin-left:0}
.hb-vs-for{display:inline-flex;gap:6px;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
/* Zu geplantem Besuch hinzufügen */
.hb-addlist{display:flex;flex-direction:column;gap:6px;max-height:55vh;overflow:auto}
.hb-addv{display:flex;gap:10px;align-items:center;width:100%;text-align:left;padding:8px 10px;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--text);cursor:pointer;font:inherit}
.hb-addv:hover{border-color:var(--accent);background:var(--accent-soft)}
.hb-addv .grow{flex:1;min-width:0;display:flex;flex-direction:column}
.hb-addv.late .agenda-date{opacity:.6}
@media (max-width:700px){.hb-mrow{flex-wrap:wrap}.hb-mrow .grow{flex-basis:calc(100% - 80px)}}

