/* Dokumentensuche: Produkt-Stylesheet.
   Grundlage: Designübergabe docs/ux/design/design/app.css (Claude Design, 08.10.2026).
   Abweichungen: Schriften lokal, Maße in rem (Text bis 200 %), Modus "Wie auf Ihrem Gerät" (.t-geraet),
   Dialoge, Hinweise und Mobilmenü relativ zum Fenster (position:fixed). Ergänzungen am Ende. */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/plus-jakarta-sans-latin-400.woff2") format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/plus-jakarta-sans-latin-500.woff2") format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/plus-jakarta-sans-latin-600.woff2") format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/plus-jakarta-sans-latin-700.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-400.woff2") format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-500.woff2") format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-serif-4-latin-400.woff2") format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/source-serif-4-latin-600.woff2") format("woff2")}

.app{
  --font-ui:"Plus Jakarta Sans","Segoe UI","Helvetica Neue",system-ui,sans-serif;
  --font-read:"Source Serif 4","Georgia","Times New Roman",serif;
  --font-mono:"IBM Plex Mono","Consolas","Menlo",monospace;
  --s1:0.25rem;--s2:0.5rem;--s3:0.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4rem;
  --r-ctl:0.375rem;--r-card:0.625rem;--r-dlg:0.875rem;--r-pill:62.4375rem;
  --touch:2.75rem;
  --dur:160ms;--ease:cubic-bezier(.2,.7,.2,1);
}
.t-hell,.t-geraet{
  --bg:#F3F4F6;--surface:#FFFFFF;--surface-2:#EBEDF1;--surface-3:#E1E5EB;
  --text:#14171C;--text-2:#4A515C;--border:#D3D8DF;--border-strong:#7E8794;
  --action:#1D4BB0;--action-hover:#163B8C;--on-action:#FFFFFF;--action-soft:#E4EBFA;
  --focus:#1D4BB0;--focus-halo:#FFFFFF;
  --error:#AE2015;--error-bg:#FCEBE9;--error-line:#E7A39C;
  --warn:#7D4A00;--warn-bg:#FDF2DA;--warn-line:#E2BE72;
  --ok:#1A6634;--ok-bg:#E5F3EA;--ok-line:#94C9A6;
  --source:#0A5A63;--source-bg:#E0F0F1;--source-line:#8EC4C9;
  --info-bg:#E8EDF7;--info-line:#A9B9DC;
  --scrim:rgba(20,23,28,.48);--shadow:0 0.75rem 2.5rem rgba(20,23,28,.18);
  color-scheme:light;
}
.t-dunkel{
  --bg:#0E1115;--surface:#161A20;--surface-2:#1E232B;--surface-3:#272D37;
  --text:#E7EAEE;--text-2:#A8B0BB;--border:#2D343E;--border-strong:#77808C;
  --action:#8FB1FF;--action-hover:#B2C9FF;--on-action:#0E1115;--action-soft:#1C2A47;
  --focus:#8FB1FF;--focus-halo:#0E1115;
  --error:#FF8F86;--error-bg:#341613;--error-line:#7A3A33;
  --warn:#F2C46D;--warn-bg:#2E230C;--warn-line:#6E5320;
  --ok:#7FD39B;--ok-bg:#10281A;--ok-line:#2F6B44;
  --source:#72D2DB;--source-bg:#0E2C30;--source-line:#2B6C73;
  --info-bg:#18223A;--info-line:#34486F;
  --scrim:rgba(0,0,0,.62);--shadow:0 0.75rem 2.5rem rgba(0,0,0,.5);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){.t-geraet{
  --bg:#0E1115;--surface:#161A20;--surface-2:#1E232B;--surface-3:#272D37;
  --text:#E7EAEE;--text-2:#A8B0BB;--border:#2D343E;--border-strong:#77808C;
  --action:#8FB1FF;--action-hover:#B2C9FF;--on-action:#0E1115;--action-soft:#1C2A47;
  --focus:#8FB1FF;--focus-halo:#0E1115;
  --error:#FF8F86;--error-bg:#341613;--error-line:#7A3A33;
  --warn:#F2C46D;--warn-bg:#2E230C;--warn-line:#6E5320;
  --ok:#7FD39B;--ok-bg:#10281A;--ok-line:#2F6B44;
  --source:#72D2DB;--source-bg:#0E2C30;--source-line:#2B6C73;
  --info-bg:#18223A;--info-line:#34486F;
  --scrim:rgba(0,0,0,.62);--shadow:0 0.75rem 2.5rem rgba(0,0,0,.5);
  color-scheme:dark;
}}

.app{container-type:inline-size;position:relative;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:1rem;line-height:1.5rem;-webkit-font-smoothing:antialiased;text-wrap:pretty}
.app *{box-sizing:border-box}
.app h1,.app h2,.app h3,.app h4,.app p{margin:0}
.app a{color:var(--action);text-underline-offset:3px}
.app a:hover{color:var(--action-hover)}
.app :focus-visible,.app .is-focus{outline:3px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 0.3125rem var(--focus-halo)}
.app ul{margin:0;padding:0;list-style:none}
@media (prefers-reduced-motion:reduce){.app *{transition:none!important;animation:none!important}}

/* Typografie */
.h1{font-size:1.75rem;line-height:2.25rem;font-weight:600;letter-spacing:-.01em}
.h2{font-size:1.25rem;line-height:1.75rem;font-weight:600}
.h3{font-size:1rem;line-height:1.5rem;font-weight:600}
.lead{font-size:1.0625rem;line-height:1.625rem;color:var(--text-2)}
.meta{font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.small{font-size:0.875rem;line-height:1.25rem}
.mono,.path{font-family:var(--font-mono);font-size:0.8438rem;line-height:1.25rem;overflow-wrap:anywhere}
.read{font-family:var(--font-read);font-size:1.125rem;line-height:1.875rem}
.eyebrow{font-size:0.8125rem;line-height:1.125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}
.num{font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Rahmen */
.shell{display:flex;min-height:100vh}
.side{width:16rem;flex:none;background:var(--surface);border-right:1px solid var(--border);padding:1.25rem 0.875rem;display:flex;flex-direction:column;gap:1.25rem}
.brand{display:flex;gap:0.625rem;align-items:center;padding:0.25rem 0.5rem}
.brand-mark{width:1.75rem;height:1.75rem;flex:none;display:block}
.brand-mark .bm-bg{fill:var(--action)}
.brand-mark .bm-fg{fill:none;stroke:var(--on-action);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand-mark .bm-lens{fill:var(--action);stroke:var(--on-action);stroke-width:1.8}
.brand-name{font-weight:600;font-size:0.9375rem;line-height:1.25rem}
.brand-org{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2)}
.nav{display:flex;flex-direction:column;gap:2px}
.nav-a{display:flex;align-items:center;gap:0.625rem;min-height:var(--touch);padding:0 0.75rem;border-radius:var(--r-ctl);color:var(--text)!important;text-decoration:none;font-size:0.9375rem;font-weight:500}
.nav-a:hover{background:var(--surface-2)}
.nav-a.cur{background:var(--action-soft);color:var(--action)!important;font-weight:600}
/* .nav in front: the reset .app ul (margin and padding 0) otherwise wins and the indent of the design is lost */
.nav .nav-sub{display:flex;flex-direction:column;gap:0.25rem;margin:0.25rem 0 0.5rem 1.375rem;padding-left:0.625rem;border-left:1px solid var(--border)}
.nav-sub .nav-a{min-height:var(--touch);font-size:0.875rem;font-weight:400}
.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:0.5rem}
.acct{display:flex;align-items:center;gap:0.625rem;min-height:3.25rem;width:100%;padding:0.375rem 0.625rem;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}
.avatar{width:2rem;height:2rem;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font-size:0.8125rem;font-weight:600;flex:none}
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.mbar{display:none;align-items:center;gap:0.75rem;padding:0.5rem 0.75rem;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5}
.mbar .grow{flex:1;min-width:0}
.page{width:100%;max-width:70rem;padding:2rem 2.5rem 4rem;display:flex;flex-direction:column;gap:1.5rem}
.page-narrow{max-width:51.25rem}
.page-head{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;justify-content:space-between}
.page-head .titles{display:flex;flex-direction:column;gap:0.375rem;min-width:0}
.crumbs{display:flex;flex-wrap:wrap;gap:0.375rem;font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.row{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center}
.stack{display:flex;flex-direction:column;gap:1rem}
.stack-s{display:flex;flex-direction:column;gap:0.5rem}
.spread{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center;justify-content:space-between}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(21.25rem,100%),1fr));gap:1rem}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));gap:1rem}
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12.5rem,100%),1fr));gap:0.75rem}
.dim{opacity:.45;pointer-events:none}

/* Zentrierte öffentliche Seiten */
.public{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:4.5rem 1rem 3rem;gap:1.5rem}
.public-card{width:100%;max-width:27.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-dlg);padding:2rem;display:flex;flex-direction:column;gap:1.25rem}
.public-foot{max-width:27.5rem;width:100%;display:flex;justify-content:space-between;gap:0.75rem;flex-wrap:wrap}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;min-height:var(--touch);padding:0 1.125rem;border-radius:var(--r-ctl);border:1px solid transparent;font:inherit;font-size:0.9375rem;font-weight:600;line-height:1.25rem;text-decoration:none!important;cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease)}
.btn-p{background:var(--action);color:var(--on-action)!important}
.btn-p:hover{background:var(--action-hover)}
.btn-s{background:var(--surface);color:var(--text)!important;border-color:var(--border-strong)}
.btn-s:hover{background:var(--surface-2)}
.btn-g{background:transparent;color:var(--action)!important;padding:0 0.625rem}
.btn-g:hover{background:var(--action-soft)}
.btn-d{background:var(--error);color:var(--surface)!important}
.btn-full{width:100%}
.btn[disabled],.btn.is-disabled{background:var(--surface-2);color:var(--text-2)!important;border-color:var(--border);cursor:not-allowed}
.btn.is-busy{cursor:progress}
.spin{width:1rem;height:1rem;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:sp 900ms linear infinite;flex:none}
@keyframes sp{to{transform:rotate(360deg)}}
.icon{width:1.25rem;height:1.25rem;flex:none;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.icon-s{width:1rem;height:1rem}

/* Formulare */
.field{display:flex;flex-direction:column;gap:0.375rem}
.label{font-size:0.9375rem;line-height:1.25rem;font-weight:600}
.hint{font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.input,.select,.textarea{width:100%;min-height:var(--touch);padding:0.625rem 0.75rem;border:1px solid var(--border-strong);border-radius:var(--r-ctl);background:var(--surface);color:var(--text);font:inherit;font-size:1rem}
.input::placeholder,.textarea::placeholder{color:var(--text-2)}
.textarea{min-height:6rem;resize:vertical;line-height:1.5rem}
.input.err,.textarea.err,.select.err{border-color:var(--error);border-width:2px}
.ferr{display:flex;gap:0.375rem;align-items:flex-start;font-size:0.875rem;line-height:1.25rem;color:var(--error);font-weight:500}
.pw{display:flex;position:relative}
.pw .input{flex:1;padding-right:var(--touch)}
.pw-eye{position:absolute;top:0;right:0;bottom:0;width:var(--touch);display:grid;place-items:center;border:0;border-radius:var(--r-ctl);background:transparent;color:var(--text-2);cursor:pointer}
.pw-eye:hover{color:var(--text)}
.pw-eye[aria-pressed="true"] svg:first-child,.pw-eye:not([aria-pressed="true"]) svg:last-child{display:none}
.check{display:flex;gap:0.75rem;align-items:flex-start;min-height:var(--touch);padding:0.625rem 0;cursor:pointer}
.check input{width:1.25rem;height:1.25rem;margin:2px 0 0;accent-color:var(--action);flex:none}
.radio-card{display:flex;gap:0.75rem;align-items:flex-start;padding:0.875rem 1rem;border:1px solid var(--border-strong);border-radius:var(--r-ctl);cursor:pointer;background:var(--surface)}
.radio-card.sel{border:2px solid var(--action);padding:0.8125rem 0.9375rem;background:var(--action-soft)}
.radio-card input{width:1.25rem;height:1.25rem;margin:2px 0 0;accent-color:var(--action);flex:none}
.errsum{border:2px solid var(--error);background:var(--error-bg);border-radius:var(--r-card);padding:0.875rem 1rem;display:flex;flex-direction:column;gap:0.375rem}
.errsum a{color:var(--error)}

/* Hinweise */
.note{display:flex;gap:0.75rem;align-items:flex-start;padding:0.75rem 0.875rem;border-radius:var(--r-card);border:1px solid var(--info-line);background:var(--info-bg);font-size:0.9375rem;line-height:1.375rem}
.note .icon{margin-top:1px}
.note .body{display:flex;flex-direction:column;gap:0.5rem;min-width:0;flex:1}
.n-warn{background:var(--warn-bg);border-color:var(--warn-line)}
.n-warn>.icon{color:var(--warn)}
.n-err{background:var(--error-bg);border-color:var(--error-line)}
.n-err>.icon{color:var(--error)}
.n-ok{background:var(--ok-bg);border-color:var(--ok-line)}
.n-ok>.icon{color:var(--ok)}
.n-info>.icon{color:var(--action)}
.toast{position:fixed;right:1.5rem;bottom:1.5rem;z-index:30;display:flex;gap:0.625rem;align-items:center;background:var(--text);color:var(--bg);padding:0.75rem 1rem;border-radius:var(--r-card);box-shadow:var(--shadow);font-size:0.9375rem;max-width:calc(100% - 2rem)}

/* Karten, Status */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:1.25rem;display:flex;flex-direction:column;gap:0.75rem;min-width:0}
.card-tight{padding:0.875rem 1rem}
.badge{display:inline-flex;align-items:center;gap:0.375rem;min-height:1.625rem;padding:2px 0.625rem;border-radius:var(--r-pill);font-size:0.8125rem;line-height:1.125rem;font-weight:600;border:1px solid var(--border);background:var(--surface-2);color:var(--text);white-space:nowrap}
.b-ok{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok)}
.b-warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn)}
.b-err{background:var(--error-bg);border-color:var(--error-line);color:var(--error)}
.b-info{background:var(--action-soft);border-color:var(--info-line);color:var(--action)}
.b-src{background:var(--source-bg);border-color:var(--source-line);color:var(--source)}
.dot{width:0.5rem;height:0.5rem;border-radius:50%;background:currentColor;flex:none}
.kv{display:grid;grid-template-columns:minmax(8.75rem,13.75rem) minmax(0,1fr);gap:0.5rem 1rem;font-size:0.9375rem;line-height:1.375rem}
.kv dt{color:var(--text-2)}
.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}
.counter{display:flex;flex-direction:column;gap:2px;padding:0.875rem 1rem;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);min-width:0}
.counter .n{font-size:1.625rem;line-height:2rem;font-weight:600;font-variant-numeric:tabular-nums}
.counter .l{font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.counter.c-warn{border-color:var(--warn-line);background:var(--warn-bg)}
.counter.c-err{border-color:var(--error-line);background:var(--error-bg)}
.bar{height:0.5rem;border-radius:62.4375rem;background:var(--surface-3);overflow:hidden}
.bar>span{display:block;height:100%;background:var(--action);border-radius:62.4375rem}
.bar.indet>span{width:30%;animation:ind 1.6s var(--ease) infinite}
@keyframes ind{0%{transform:translateX(-100%)}100%{transform:translateX(340%)}}
.skel{background:var(--surface-3);border-radius:0.375rem;height:0.875rem}
.divider{height:1px;background:var(--border);border:0;margin:0}

/* Listen (beschriftete Einträge statt breiter Tabellen) */
.list{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}
.list-head,.li{display:grid;grid-template-columns:var(--cols);gap:1rem;align-items:center;padding:0.75rem 1.25rem}
.list-head{background:var(--surface-2);font-size:0.8125rem;line-height:1.125rem;font-weight:600;color:var(--text-2);border-bottom:1px solid var(--border)}
.li{border-top:1px solid var(--border);font-size:0.9375rem;line-height:1.375rem;min-height:3.75rem}
.li:first-of-type{border-top:0}
.li .cl{display:none;font-size:0.8125rem;line-height:1.125rem;color:var(--text-2);font-weight:600}
.li .cell{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}
.li .acts{display:flex;gap:0.25rem;justify-content:flex-end;flex-wrap:wrap}
.toolbar{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:flex-end}
.toolbar .field{flex:1 1 16.25rem}
.chips{display:flex;flex-wrap:wrap;gap:0.5rem}
.chip{display:inline-flex;align-items:center;gap:0.375rem;min-height:var(--touch);padding:0 0.875rem;border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-size:0.875rem;font-weight:500;cursor:pointer}
.chip.sel{background:var(--text);color:var(--bg);border-color:var(--text)}
.chip .c{font-variant-numeric:tabular-nums;opacity:.85}
.pager{display:flex;gap:0.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap}

/* Stepper */
.stepper{display:flex;flex-direction:column;gap:0.25rem}
.step{display:flex;gap:0.75rem;align-items:center;min-height:var(--touch);padding:0.375rem 0.625rem;border-radius:var(--r-ctl);font-size:0.9375rem;line-height:1.25rem}
.step .sn{width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--border-strong);font-size:0.8125rem;font-weight:600;flex:none;background:var(--surface)}
.step.done .sn{background:var(--ok);border-color:var(--ok);color:var(--surface)}
.step.cur{background:var(--action-soft);font-weight:600}
.step.cur .sn{border-color:var(--action);background:var(--action);color:var(--on-action)}
.step.open .sn{border-style:dashed}
.step .st{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2);font-weight:400}
.hstep{display:flex;gap:0.5rem;flex-wrap:wrap;align-items:center}
.hstep .step{padding:0.25rem 0.625rem 0.25rem 0.25rem}

/* Ordnerbaum */
.tree{border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface);padding:0.5rem;display:flex;flex-direction:column;gap:2px}
.tn{display:flex;align-items:center;gap:0.5rem;min-height:var(--touch);padding:0 0.625rem;border-radius:var(--r-ctl);font-size:0.9375rem;color:var(--text);background:none;border:0;font:inherit;text-align:left;width:100%;cursor:pointer}
.tn:hover{background:var(--surface-2)}
.tn.sel{background:var(--action-soft);color:var(--action);font-weight:600;box-shadow:inset 0 0 0 2px var(--action)}
.tn.off{color:var(--text-2);cursor:not-allowed}
.tn .grow{flex:1;min-width:0;overflow-wrap:anywhere}
.tn.l1{padding-left:2.125rem}.tn.l2{padding-left:3.625rem}.tn.l3{padding-left:5.125rem}

/* Fragen und Antworten */
.qa{display:flex;flex-direction:column;gap:1.75rem}
.ctxbar{display:flex;flex-wrap:wrap;gap:0.5rem 1.25rem;align-items:center;padding:0.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);font-size:0.875rem;line-height:1.25rem}
.ctxbar .ci{display:flex;gap:0.375rem;align-items:center;min-width:0}
.ctxbar .ci b{font-weight:600}
.q{align-self:flex-end;max-width:min(42.5rem,100%);background:var(--surface-2);border-radius:var(--r-card);padding:0.75rem 1rem;display:flex;flex-direction:column;gap:0.25rem}
.q .who{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2);font-weight:600}
.ans{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}
.ans .who{display:flex;gap:0.5rem;align-items:center;font-size:0.8125rem;line-height:1.125rem;color:var(--text-2);font-weight:600}
.cite{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.5rem;margin:0 2px;padding:0 0.375rem;border-radius:0.3125rem;background:var(--source-bg);border:1px solid var(--source-line);color:var(--source)!important;font-family:var(--font-ui);font-size:0.8125rem;font-weight:700;line-height:1;text-decoration:none!important;vertical-align:2px;position:relative}
.cite:after{content:"";position:absolute;inset:-10px -8px}
.ans-acts{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;padding-top:0.25rem}
.srcs{display:flex;flex-direction:column;gap:0.625rem}
.srcs-h{display:flex;align-items:center;gap:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;color:var(--source)}
.src{border:1px solid var(--source-line);border-radius:var(--r-card);background:var(--surface);overflow:hidden}
.src.focus{outline:3px solid var(--focus);outline-offset:2px}
.src-head{display:flex;gap:0.875rem;align-items:flex-start;padding:0.875rem 1rem}
.src-n{width:2rem;height:2rem;border-radius:0.375rem;background:var(--source);color:var(--surface);display:grid;place-items:center;font-weight:700;font-size:0.9375rem;flex:none}
.src-main{display:flex;flex-direction:column;gap:0.25rem;min-width:0;flex:1}
.src-file{font-weight:600;font-size:1rem;line-height:1.375rem;overflow-wrap:anywhere}
.src-meta{display:flex;flex-wrap:wrap;gap:0.25rem 0.875rem;font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.src-meta span{overflow-wrap:anywhere}
.src-acts{display:flex;flex-wrap:wrap;gap:0.5rem;padding:0 1rem 0.875rem 3.875rem}
.excerpt{margin:0 1rem 1rem 3.875rem;padding:0.875rem 1rem;background:var(--source-bg);border-radius:var(--r-ctl);display:flex;flex-direction:column;gap:0.5rem}
.excerpt q{font-family:var(--font-read);font-size:1.0625rem;line-height:1.75rem;quotes:"„" "“"}
/* The checked quote: background and underline, so it does not rest on colour alone (WCAG 1.4.1) */
.excerpt mark{background:var(--action-soft);color:var(--text);text-decoration:underline;text-decoration-color:var(--action);text-decoration-thickness:2px;text-underline-offset:0.2em;border-radius:2px;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.more{border:1px dashed var(--border-strong);border-radius:var(--r-card);background:transparent}
.more>button{width:100%;min-height:var(--touch);display:flex;gap:0.5rem;align-items:center;padding:0.5rem 1rem;background:none;border:0;font:inherit;font-size:0.9375rem;color:var(--text);cursor:pointer;text-align:left}
.more .mi{padding:0.625rem 1rem;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:2px}
.composer{position:sticky;bottom:0;background:linear-gradient(to bottom,transparent,var(--bg) 1.5rem);padding-top:1.5rem;z-index:4}
.composer-box{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-card);padding:0.75rem;display:flex;flex-direction:column;gap:0.625rem;box-shadow:var(--shadow)}
.composer-box .textarea{border:0;padding:0.375rem 0.5rem;min-height:4.5rem;background:transparent}
.composer-row{display:flex;flex-wrap:wrap;gap:0.5rem 0.75rem;align-items:center;justify-content:space-between}
.kbd{font-family:var(--font-mono);font-size:0.7812rem;padding:1px 0.375rem;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:0.25rem}
.contra{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16.25rem,100%),1fr));gap:0.75rem}
.contra .card{border-color:var(--warn-line)}

/* Dialoge, Popover */
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:20;display:flex;align-items:flex-start;justify-content:center;padding:6rem 1rem 1.5rem}
.dlg{width:100%;max-width:35rem;background:var(--surface);border-radius:var(--r-dlg);box-shadow:var(--shadow);border:1px solid var(--border);display:flex;flex-direction:column}
.dlg-wide{max-width:45rem}
.dlg-h{display:flex;justify-content:space-between;align-items:flex-start;gap:0.75rem;padding:1.25rem 1.5rem 0.5rem}
.dlg-b{padding:0.5rem 1.5rem 1rem;display:flex;flex-direction:column;gap:1rem}
.dlg-f{padding:1rem 1.5rem 1.25rem;display:flex;flex-wrap:wrap-reverse;gap:0.625rem;justify-content:flex-end;border-top:1px solid var(--border)}
.iconbtn{width:var(--touch);height:var(--touch);display:grid;place-items:center;border-radius:var(--r-ctl);border:0;background:transparent;color:var(--text);cursor:pointer;flex:none}
.iconbtn:hover{background:var(--surface-2)}
.pop{position:absolute;z-index:25;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow);padding:0.5rem;width:18.75rem;display:flex;flex-direction:column;gap:0.25rem}
.pop .ph{padding:0.5rem 0.625rem 0.25rem;font-size:0.8125rem;font-weight:600;color:var(--text-2)}
.pop .opt{display:flex;gap:0.625rem;align-items:center;min-height:var(--touch);padding:0 0.625rem;border-radius:var(--r-ctl);font-size:0.9375rem}
.pop .opt input{width:1.125rem;height:1.125rem;accent-color:var(--action)}
.secret{display:flex;flex-wrap:wrap;gap:0.625rem;align-items:center;justify-content:space-between;padding:0.75rem 0.875rem;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface-2)}
.oncebox{display:flex;flex-direction:column;gap:0.625rem;padding:0.875rem;border:2px solid var(--action);border-radius:var(--r-card);background:var(--action-soft)}
.oncebox .mono{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-ctl);padding:0.625rem 0.75rem;font-size:0.875rem}
.gap-val{color:var(--warn);font-weight:600}

/* Responsiv: Container-Abfragen auf .app */
@container (max-width: 53.75rem){
  .side{display:none}
  .side.open{display:flex;position:fixed;inset:0 auto 0 0;width:min(20rem,88%);z-index:22;box-shadow:var(--shadow)}
  .mbar{display:flex}
  .page{padding:1.25rem 1rem 3rem;gap:1.25rem}
  .h1{font-size:1.5rem;line-height:2rem}
  .list-head{display:none}
  .li{grid-template-columns:1fr;gap:0.625rem;padding:0.875rem 1rem}
  .li .cl{display:block}
  .li .acts{justify-content:flex-start}
  .kv{grid-template-columns:1fr;gap:2px}
  .kv dd{margin-bottom:0.625rem}
  .ans{padding:1rem}
  .src-acts{padding-left:1rem}
  .excerpt{margin-left:1rem}
  .q{align-self:stretch}
  .public{padding:2rem 1rem}
  .public-card{padding:1.5rem 1.25rem}
  .scrim{padding:1rem 0.5rem;align-items:flex-end}
  .dlg{max-width:none}
  .dlg-f .btn{flex:1 1 8.75rem}
  .toast{left:1rem;right:1rem;bottom:1rem}
  .page-head .row .btn{flex:1 1 auto}
}

/* Ergänzungen für das Produkt */
html{-webkit-text-size-adjust:100%}
body{margin:0}
.skip{position:absolute;left:1rem;top:-4rem;z-index:40;background:var(--surface);color:var(--text);padding:0.75rem 1rem;border-radius:var(--r-ctl);border:1px solid var(--border-strong)}
.skip:focus{top:1rem}
[hidden]{display:none!important}
.acct-wrap{position:relative}
.acct-wrap .pop{left:0;bottom:calc(100% + 0.5rem)}
.mbar .acct-wrap .pop{left:auto;right:0;bottom:auto;top:calc(100% + 0.5rem)}
.app{scroll-padding-top:4rem;scroll-padding-bottom:12rem}
.side-close{display:none}
.side.open .side-close{display:grid}
.side-head{flex-wrap:nowrap;gap:0.5rem}
.side-collapse,.mbar-expand{color:var(--text-2)}
.side-collapse:hover,.mbar-expand:hover{background:var(--surface-2);color:var(--text)}
.mbar .brand{padding:0}
.mbar-expand{display:none}
.shell-zu .side:not(.open){display:none}
.shell-zu .mbar{display:flex}
.shell-zu .mbar-menu{display:none}
.shell-zu .mbar-expand{display:grid}
.options{gap:0.75rem}
@container (max-width: 53.75rem){
  .side-collapse{display:none}
  .shell-zu .mbar-menu{display:inline-flex}
  .shell-zu .mbar-expand{display:none}
}
.acct-text{display:flex;flex-direction:column;min-width:0}
fieldset.plain{border:0;margin:0;padding:0;min-width:0}
.public-brand{width:100%;max-width:27.5rem;padding:0}
.public-brand .brand-name{font-size:1.125rem}
.contents{display:contents}
.public-note{max-width:27.5rem;width:100%}
.side-steps{width:18.75rem}
.step-text{display:flex;flex-direction:column}
.app ol.stepper{margin:0;padding:0;list-style:none}
dialog.dlg{padding:0;color:var(--text)}
dialog.dlg::backdrop{background:var(--scrim)}
.app details.more>summary{width:100%;min-height:var(--touch);display:flex;gap:0.5rem;align-items:center;padding:0.5rem 1rem;font-size:0.9375rem;color:var(--text);cursor:pointer;list-style:none}
.app details.more>summary::-webkit-details-marker{display:none}
.app details.more[open]>summary .icon{transform:rotate(180deg)}
.ans-pending{flex-direction:row;align-items:center;gap:0.75rem}
.ctx-select{flex:1 1 16.25rem;gap:0.25rem}
.ctx-meta{gap:0.25rem;flex:1 1 17.5rem}
.empty-card{align-items:flex-start;padding:2.5rem 2rem;gap:1rem}
.empty-card .icon{width:2rem;height:2rem;color:var(--text-2)}
.contra-value{font-size:1.0625rem;line-height:1.75rem}
.copy-text{min-height:15rem;font-size:0.84375rem;white-space:pre-wrap}
dialog.dlg:not([open]){display:none}
.htmx-indicator{display:none}
.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:inline-block}
.tn-group{display:flex;flex-direction:column;gap:2px}
.tn-pick{display:flex;align-items:center;gap:0.25rem}
.tn-pick input{width:1.25rem;height:1.25rem;accent-color:var(--action);flex:none;margin:0 0.25rem 0 0}
.note.htmx-indicator.htmx-request{display:flex}
.tn[aria-expanded="true"]>.icon{transform:rotate(90deg)}
ul.tree,.tree ul{list-style:none;margin:0;padding:0}
.tree ul{display:flex;flex-direction:column;gap:2px}
.tn-toggle{width:var(--touch);min-width:var(--touch);padding:0;justify-content:center;flex:none}
.tn-toggle-space{display:inline-block;width:var(--touch);flex:none}
.tn-label{flex:1;min-width:0;min-height:var(--touch);display:flex;align-items:center;padding:0 0.375rem;font-size:0.9375rem;overflow-wrap:anywhere;cursor:pointer}
.tn-pick:has(input:checked) .tn-label{color:var(--action);font-weight:600}
.scope-panel{gap:0.75rem}
.scope-panel>summary{padding:0.25rem 0;min-height:var(--touch);display:flex;gap:0.5rem;align-items:center;cursor:pointer;list-style:none;font-size:0.9375rem}
.scope-panel>summary::-webkit-details-marker{display:none}
.scope-panel[open]>summary .icon{transform:rotate(180deg)}

/* Dokumentensuche v2 (10.10.2026): Ergänzungen zu app.css. Keine neuen Farbwerte: alle Bausteine nutzen die gemessenen Tokens. */

.contents{display:contents}
.grow{flex:1;min-width:0}
.nowrap{white-space:nowrap}
.mt0{margin-top:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Rahmen ---------- */
.side-head{display:flex;flex-direction:column;gap:0.625rem}
.orgsw{display:flex;align-items:center;gap:0.625rem;width:100%;min-height:var(--touch);padding:0.375rem 0.625rem;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}
.orgsw:hover{background:var(--surface-2)}
.orgsw .ol{font-size:0.75rem;line-height:1rem;color:var(--text-2)}
.orgsw .on{font-size:0.9375rem;line-height:1.25rem;font-weight:600}
.nav-count{margin-left:auto;min-width:1.5rem;height:1.375rem;padding:0 0.4375rem;border-radius:62.4375rem;background:var(--action);color:var(--on-action);font-size:0.75rem;font-weight:700;display:inline-grid;place-items:center}
.nav-sep{height:1px;background:var(--border);margin:0.5rem 0.375rem}
.nav-quiet .nav-a{font-weight:400;color:var(--text-2)!important;font-size:0.875rem}
.runchip{display:flex;flex-direction:column;gap:0.375rem;padding:0.625rem 0.75rem;border:1px solid var(--info-line);background:var(--info-bg);border-radius:var(--r-card);font-size:0.8125rem;line-height:1.125rem;text-decoration:none!important;color:var(--text)!important}
.runchip .rt{display:flex;gap:0.5rem;align-items:center;font-weight:600}
.runchip .bar{height:0.375rem}
.menu{position:absolute;z-index:26;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow);padding:0.375rem;min-width:15rem;display:flex;flex-direction:column;gap:2px}
.menu-h{padding:0.5rem 0.625rem 0.25rem;font-size:0.75rem;line-height:1rem;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em}
.menu-i{display:flex;align-items:center;gap:0.625rem;min-height:var(--touch);padding:0 0.625rem;border-radius:var(--r-ctl);border:0;background:none;color:var(--text)!important;font:inherit;font-size:0.9375rem;text-align:left;text-decoration:none!important;cursor:pointer;width:100%}
.menu-i:hover,.menu-i.is-hover{background:var(--surface-2)}
.menu-i[aria-checked="true"],.menu-i.cur{font-weight:600}
.menu-i .chk{margin-left:auto;color:var(--action)}
.menu-i.danger{color:var(--error)!important}
.menu-sep{height:1px;background:var(--border);margin:0.25rem 2px}
.seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--r-ctl);overflow:hidden;width:100%}
.seg button{flex:1;min-height:2.5rem;border:0;background:var(--surface);color:var(--text);font:inherit;font-size:0.875rem;cursor:pointer;padding:0 0.5rem}
.seg button+button{border-left:1px solid var(--border-strong)}
.seg button[aria-pressed="true"]{background:var(--action-soft);color:var(--action);font-weight:600}

/* Seitenkopf: ein Muster */
.phead{display:flex;flex-wrap:wrap;gap:0.75rem 1rem;align-items:flex-start;justify-content:space-between}
.phead .t{display:flex;flex-direction:column;gap:0.25rem;min-width:0;flex:1 1 20rem}
.phead .acts{display:flex;gap:0.5rem;align-items:center;flex-wrap:wrap}
.statusline{display:flex;flex-wrap:wrap;gap:0.25rem 0.875rem;font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.statusline .si{display:inline-flex;gap:0.375rem;align-items:center}
.statusline a{font-weight:500}
.dot-ok{color:var(--ok)}.dot-warn{color:var(--warn)}.dot-err{color:var(--error)}.dot-info{color:var(--action)}

/* Reiter */
.tabs{display:flex;gap:0.25rem;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:thin}
.tab{display:inline-flex;align-items:center;gap:0.5rem;min-height:var(--touch);padding:0 0.875rem;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;background:none;color:var(--text-2)!important;font:inherit;font-size:0.9375rem;font-weight:500;text-decoration:none!important;white-space:nowrap;cursor:pointer}
.tab:hover{color:var(--text)!important}
.tab[aria-selected="true"],.tab.cur{color:var(--action)!important;border-bottom-color:var(--action);font-weight:600}
.tab .nav-count{margin-left:2px}
.subtabs{display:inline-flex;gap:0.25rem;padding:0.25rem;border-radius:var(--r-card);background:var(--surface-2)}
.subtab{min-height:2.5rem;padding:0 0.875rem;border-radius:var(--r-ctl);border:0;background:none;color:var(--text);font:inherit;font-size:0.875rem;font-weight:500;cursor:pointer;text-decoration:none!important;display:inline-flex;align-items:center;gap:0.375rem}
.subtab[aria-selected="true"]{background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.12);font-weight:600}

/* ---------- Fragen ---------- */
.ask{display:flex;flex-direction:column;min-height:100vh}
.convbar{position:sticky;top:0;z-index:6;background:var(--bg);border-bottom:1px solid var(--border);padding:0.75rem 2.5rem}
.convbar-in{max-width:55rem;margin:0 auto;display:flex;flex-wrap:wrap;gap:0.5rem 1rem;align-items:center}
.convbar .ctitle{display:flex;flex-direction:column;min-width:0;flex:1 1 17.5rem}
.convbar .ctitle .n{font-size:1rem;line-height:1.375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.convbar .ctitle .m{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2)}
.thread{flex:1;width:100%;max-width:55rem;margin:0 auto;padding:1.5rem 2.5rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}
.ask-foot{position:sticky;bottom:0;z-index:5;background:linear-gradient(to bottom,transparent,var(--bg) 1.125rem);padding:1.125rem 2.5rem 1.25rem}
.ask-foot-in{max-width:55rem;margin:0 auto;display:flex;flex-direction:column;gap:0.5rem}
.cbox{background:var(--surface);border:1px solid var(--border-strong);border-radius:0.875rem;box-shadow:var(--shadow);display:flex;flex-direction:column}
.cbox:focus-within{border-color:var(--action);box-shadow:0 0 0 1px var(--action),var(--shadow)}
.cbox-row{display:flex;gap:0.5rem;align-items:flex-end;padding:0.5rem 0.5rem 0.5rem 1rem}
.cbox textarea{flex:1;min-width:0;min-height:2.75rem;max-height:12.5rem;resize:none;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:1rem;line-height:1.5rem;padding:0.625rem 0}
.cbox textarea::placeholder{color:var(--text-2)}
.cbox-scope{display:flex;flex-wrap:wrap;gap:0.375rem;align-items:center;padding:0.5rem 0.625rem 0}
.cbox-meta{display:flex;flex-wrap:wrap;gap:0.25rem 0.75rem;justify-content:space-between;padding:0 1rem 0.625rem;font-size:0.8125rem;line-height:1.125rem;color:var(--text-2)}
.sendbtn{min-height:var(--touch);min-width:var(--touch)}
.scopebtn{display:inline-flex;align-items:center;gap:0.375rem;min-height:2.25rem;padding:0 0.625rem;border-radius:62.4375rem;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;font-size:0.875rem;cursor:pointer;max-width:100%}
.scopebtn:hover{border-color:var(--border-strong)}
.scopebtn b{font-weight:600}
.scopebtn.changed{border-color:var(--action);background:var(--action-soft);color:var(--action)}
.scopebtn .x{display:inline-grid;place-items:center;width:1.25rem;height:1.25rem;border-radius:50%}
.pending{display:flex;gap:0.5rem;align-items:center;font-size:0.8125rem;line-height:1.125rem;color:var(--action);font-weight:500;padding:0 0.375rem}

/* Suchumfang: Popover (breit) / unteres Blatt (schmal) */
.pop2{position:absolute;z-index:24;background:var(--surface);border:1px solid var(--border);border-radius:0.875rem;box-shadow:var(--shadow);width:min(35rem,calc(100% - 2rem));display:flex;flex-direction:column;max-height:min(40rem,calc(100% - 2.5rem))}
.pop2-h{display:flex;justify-content:space-between;align-items:center;gap:0.75rem;padding:0.875rem 1rem 0.375rem}
.pop2-b{padding:0.375rem 1rem 0.75rem;display:flex;flex-direction:column;gap:1rem;overflow:auto}
.pop2-f{display:flex;gap:0.5rem;justify-content:space-between;align-items:center;padding:0.75rem 1rem;border-top:1px solid var(--border)}
.tchips{display:flex;flex-wrap:wrap;gap:0.375rem}
.tchip{display:inline-flex;align-items:center;gap:0.375rem;min-height:2.25rem;padding:0 0.75rem;border-radius:62.4375rem;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;font-size:0.875rem;cursor:pointer}
.tchip[aria-pressed="true"]{background:var(--action-soft);border-color:var(--action);color:var(--action);font-weight:600}
.tchip[aria-pressed="true"]::before{content:"";width:0.625rem;height:0.375rem;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translate(1px,-1px)}
.tchip[disabled]{opacity:.55;cursor:not-allowed}
.fgroup{display:flex;flex-direction:column;gap:0.5rem;border:0;margin:0;padding:0;min-width:0}
.fgroup>legend,.fgroup>.label{font-size:0.875rem;font-weight:600;padding:0;margin-bottom:2px}

/* Antwort */
.q2{align-self:flex-end;max-width:min(40rem,92%);background:var(--surface-2);border-radius:0.875rem 0.875rem 0.25rem 0.875rem;padding:0.625rem 0.875rem}
.q2 .who{font-size:0.75rem;line-height:1rem;color:var(--text-2);font-weight:600;margin-bottom:2px}
.a2{display:flex;flex-direction:column;gap:0.875rem}
.a2-meta{display:flex;flex-wrap:wrap;gap:0.375rem 0.625rem;align-items:center;font-size:0.8125rem;line-height:1.125rem;color:var(--text-2)}
.a2-text{font-family:var(--font-read);font-size:1.125rem;line-height:1.875rem}
.a2-text p{margin:0}
.a2-text p+p{margin-top:0.75rem}
.cite2{display:inline-flex;align-items:center;justify-content:center;min-width:1.625rem;height:1.5rem;margin:0 1px;padding:0 0.375rem;border-radius:0.3125rem;border:1px solid var(--source-line);background:var(--source-bg);color:var(--source)!important;font-family:var(--font-ui);font-size:0.8125rem;font-weight:700;line-height:1;text-decoration:none!important;vertical-align:2px;cursor:pointer;position:relative}
.cite2::after{content:"";position:absolute;inset:-0.625rem -0.375rem}
.cite2[aria-expanded="true"]{background:var(--source);color:var(--surface)!important;border-color:var(--source)}
.beleg{position:absolute;z-index:22;width:min(32.5rem,calc(100% - 2rem));background:var(--surface);border:1px solid var(--source-line);border-radius:0.75rem;box-shadow:var(--shadow);display:flex;flex-direction:column}
.beleg-h{display:flex;gap:0.625rem;align-items:flex-start;padding:0.75rem 0.75rem 0.375rem 0.875rem}
.beleg-b{padding:0.25rem 0.875rem 0.75rem;display:flex;flex-direction:column;gap:0.5rem}
.beleg-f{display:flex;flex-wrap:wrap;gap:0.5rem;padding:0.625rem 0.875rem 0.75rem;border-top:1px solid var(--border)}
.quote{font-family:var(--font-read);font-size:1.0625rem;line-height:1.75rem;margin:0;padding:0.75rem 0.875rem;background:var(--source-bg);border-radius:0.5rem}
.quote mark{background:transparent;color:inherit;text-decoration:underline;text-decoration-color:var(--source);text-decoration-thickness:2px;text-underline-offset:0.25rem;font-weight:600}
.srcl{display:flex;flex-direction:column;border-top:1px solid var(--border)}
.srcl-h{font-size:0.8125rem;line-height:1.125rem;font-weight:600;color:var(--source);padding:0.625rem 0 0.25rem;display:flex;gap:0.5rem;align-items:center}
.srow{border-bottom:1px solid var(--border)}
.srow-head{display:flex;gap:0.625rem;align-items:center;min-height:3.25rem;padding:0.25rem 0}
.srow-n{min-width:2rem;height:2rem;border-radius:0.375rem;background:var(--source);color:var(--surface)!important;display:grid;place-items:center;font-weight:700;font-size:0.875rem;text-decoration:none!important;flex:none}
.srow-main{flex:1;min-width:0;display:flex;flex-direction:column;background:none;border:0;padding:0.375rem 0.25rem;text-align:left;font:inherit;color:var(--text);cursor:pointer;border-radius:0.375rem}
.srow-main:hover{background:var(--surface-2)}
.srow-f{font-weight:600;font-size:0.9375rem;line-height:1.25rem;overflow-wrap:anywhere}
.srow-m{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2);overflow-wrap:anywhere}
.srow-body{padding:0 0 0.875rem 2.625rem;display:flex;flex-direction:column;gap:0.5rem}
.srow.focus{outline:3px solid var(--focus);outline-offset:2px;border-radius:0.375rem}
.tag{display:inline-flex;align-items:center;gap:0.25rem;font-size:0.75rem;line-height:1rem;font-weight:600;padding:2px 0.5rem;border-radius:62.4375rem;border:1px solid var(--border);color:var(--text-2);background:var(--surface)}
.tag-warn{border-color:var(--warn-line);color:var(--warn);background:var(--warn-bg)}
.more2{display:flex;flex-direction:column;gap:0.25rem}
.more2>button{align-self:flex-start;display:inline-flex;gap:0.375rem;align-items:center;min-height:2.5rem;padding:0 0.5rem;margin-left:-0.5rem;border:0;background:none;color:var(--text-2);font:inherit;font-size:0.875rem;cursor:pointer;border-radius:0.375rem}
.more2>button:hover{color:var(--text);background:var(--surface-2)}
.more2 .mi2{padding:0.375rem 0 0.375rem 0;font-size:0.875rem;line-height:1.25rem;color:var(--text-2);border-top:1px dashed var(--border)}
.actbar{display:flex;flex-wrap:wrap;gap:0.375rem;align-items:center}
.actbar .sep{width:1px;height:1.5rem;background:var(--border);margin:0 0.25rem}
.ibtn{display:inline-flex;align-items:center;justify-content:center;gap:0.375rem;min-height:2.5rem;min-width:2.5rem;padding:0 0.625rem;border-radius:var(--r-ctl);border:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-size:0.875rem;font-weight:500;cursor:pointer;text-decoration:none!important}
.ibtn:hover{background:var(--surface-2)}
.ibtn.bordered{border-color:var(--border-strong)}
.ibtn[aria-pressed="true"]{background:var(--action-soft);color:var(--action);border-color:var(--action);font-weight:600}
.ibtn.sq{padding:0;width:2.5rem}
.fehlerhinweis{font-size:0.8125rem;line-height:1.125rem;color:var(--text-2)}
.inline-form{border:1px solid var(--border);border-radius:var(--r-card);padding:0.875rem;display:flex;flex-direction:column;gap:0.625rem;background:var(--surface)}

/* Leerer Start von Fragen */
.hero-empty{display:flex;flex-direction:column;gap:0.625rem;align-items:flex-start;padding:3rem 0 0.5rem}
.hero-empty .h1{font-size:1.625rem;line-height:2.125rem}
.examples{display:flex;flex-wrap:wrap;gap:0.5rem}
.ex{display:inline-flex;align-items:center;min-height:2.5rem;padding:0 0.875rem;border-radius:62.4375rem;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:0.875rem;cursor:pointer;text-align:left}
.ex:hover{border-color:var(--border-strong)}

/* ---------- Sammlung ---------- */
.ccard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:1.125rem 1.25rem;display:flex;flex-direction:column;gap:0.75rem}
.ccard-h{display:flex;gap:0.75rem;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.ccard-t{font-size:1.125rem;line-height:1.5rem;font-weight:600;color:var(--text)!important;text-decoration:none!important}
.ccard-t:hover{text-decoration:underline!important}
.ccard-acts{display:flex;gap:0.5rem;flex-wrap:wrap;align-items:center}
.minirun{display:flex;gap:0.625rem;align-items:center;font-size:0.875rem}
.minirun .bar{flex:1;max-width:15rem;height:0.375rem}
.rows{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden}
.rowh,.rowl{display:grid;grid-template-columns:var(--cols);gap:0.75rem;align-items:center;padding:0 1rem}
.rowh{min-height:2.5rem;background:var(--surface-2);font-size:0.8125rem;font-weight:600;color:var(--text-2);border-bottom:1px solid var(--border)}
.rowl{min-height:3.5rem;border-top:1px solid var(--border);position:relative}
.rowl:first-of-type{border-top:0}
.rowl:hover{background:var(--surface-2)}
.rowl.sel{background:var(--action-soft)}
.rowl .rl{color:var(--text)!important;text-decoration:none!important;font-weight:600;overflow-wrap:anywhere}
.rowl .rl::after{content:"";position:absolute;inset:0}
.rowl .rl:focus-visible{outline:none}
.rowl:has(.rl:focus-visible){outline:3px solid var(--focus);outline-offset:-3px}
.rowl .above{position:relative;z-index:1}
.rowl .cl{display:none;font-size:0.75rem;color:var(--text-2);font-weight:600}
.cell2{display:flex;flex-direction:column;gap:2px;min-width:0;padding:0.5rem 0}

/* Seitenblatt */
.sheet{position:absolute;top:0;right:0;bottom:0;z-index:23;width:min(30rem,100%);background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow);display:flex;flex-direction:column}
.sheet-h{display:flex;gap:0.75rem;align-items:flex-start;justify-content:space-between;padding:1.125rem 1.25rem 0.625rem;border-bottom:1px solid var(--border)}
.sheet-b{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1rem;overflow:auto;flex:1}
.sheet-f{padding:0.875rem 1.25rem;border-top:1px solid var(--border);display:flex;gap:0.5rem;flex-wrap:wrap}
.scrim-l{position:absolute;inset:0;z-index:22;background:var(--scrim)}

/* Einstellungen: Zeilenmuster „Zusammenfassung · Ändern“ */
.setlist{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
.setrow{display:flex;flex-wrap:wrap;gap:0.5rem 1rem;align-items:flex-start;padding:1rem 1.25rem;border-top:1px solid var(--border)}
.setrow:first-child{border-top:0}
.setrow .sl{flex:0 0 12.5rem;font-weight:600;font-size:0.9375rem;line-height:1.375rem}
.setrow .sv{flex:1 1 16.25rem;min-width:0;display:flex;flex-direction:column;gap:0.25rem;font-size:0.9375rem;line-height:1.375rem}
.setrow .sa{display:flex;gap:0.5rem;align-items:center}
.setrow.editing{background:var(--surface-2)}
.saved{display:inline-flex;gap:0.375rem;align-items:center;font-size:0.875rem;color:var(--ok);font-weight:600}
.dzone{border:1px solid var(--error-line);border-radius:var(--r-card);padding:1rem 1.25rem;display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center;justify-content:space-between;background:var(--surface)}
.cost{display:flex;flex-direction:column;gap:2px;padding:0.75rem 0.875rem;border-radius:var(--r-ctl);background:var(--warn-bg);border:1px solid var(--warn-line)}
.cost .cv{font-size:1.25rem;line-height:1.75rem;font-weight:600;font-variant-numeric:tabular-nums}
.cost .cl2{font-size:0.8125rem;line-height:1.125rem}

/* KI-Einheiten */
.unit{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);display:flex;flex-direction:column}
.unit-h{display:flex;flex-wrap:wrap;gap:0.5rem 0.875rem;align-items:center;padding:1rem 1.25rem}
.unit-h .ut{font-size:1.0625rem;line-height:1.5rem;font-weight:600;flex:0 0 auto}
.unit-h .us{flex:1 1 16.25rem;min-width:0;display:flex;flex-wrap:wrap;gap:0.375rem 0.625rem;align-items:center;font-size:0.875rem;color:var(--text-2)}
.unit-b{border-top:1px solid var(--border);padding:1rem 1.25rem;display:flex;flex-direction:column;gap:0.875rem}
.unit-f{display:flex;flex-wrap:wrap;gap:0.5rem 0.75rem;align-items:center;padding:0 1.25rem 1rem}
.unit.changed{border-color:var(--action)}

/* Einstellungen-Übersicht */
.tile{display:flex;flex-direction:column;gap:0.5rem;padding:1.125rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);text-decoration:none!important;color:var(--text)!important;position:relative;min-height:8.25rem}
.tile:hover{border-color:var(--border-strong)}
.tile .tt{font-size:1.0625rem;line-height:1.5rem;font-weight:600;display:flex;gap:0.5rem;align-items:center}
.tile .ts{font-size:0.875rem;line-height:1.25rem;color:var(--text-2)}
.tile.need{border-color:var(--warn-line);box-shadow:inset 0 0 0 1px var(--warn-line)}

/* ---------- Überblick ---------- */
.ovbar{display:flex;flex-wrap:wrap;gap:0.625rem 0.75rem;align-items:flex-end}
.ovbar .field{flex:1 1 15rem}
.grp{display:flex;flex-direction:column}
.grp-h{position:sticky;top:0;z-index:2;display:flex;gap:0.625rem;align-items:baseline;padding:0.625rem 0 0.375rem;background:var(--bg);font-size:0.875rem;font-weight:600;color:var(--text-2);border-bottom:1px solid var(--border)}
.stmt{display:grid;grid-template-columns:7rem minmax(0,1fr) auto;gap:0.25rem 1rem;padding:0.75rem 0.25rem;border-bottom:1px solid var(--border);align-items:start}
.stmt-d{font-size:0.875rem;line-height:1.375rem;font-variant-numeric:tabular-nums;font-weight:600}
.stmt-d .dd{display:block;font-size:0.75rem;line-height:1rem;color:var(--text-2);font-weight:500}
.stmt-m{display:flex;flex-direction:column;gap:0.25rem;min-width:0}
.stmt-top{display:flex;flex-wrap:wrap;gap:0.375rem 0.625rem;align-items:center;font-size:0.875rem;line-height:1.25rem}
.stmt-top .subj{font-weight:600}
.stmt-x{font-size:0.9375rem;line-height:1.375rem}
.stmt-r{display:flex;gap:0.375rem;align-items:center}
.stmt.open{background:var(--surface)}
.stmt-beleg{grid-column:2 / -1;display:flex;flex-direction:column;gap:0.5rem;padding:0.375rem 0 0.25rem}
.art{display:inline-flex;align-items:center;gap:0.3125rem;font-size:0.75rem;line-height:1rem;font-weight:600;padding:2px 0.5rem 2px 0.375rem;border-radius:0.3125rem;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}
.art svg{width:0.875rem;height:0.875rem;stroke:currentColor;fill:none;stroke-width:2}
.art.quiet{background:transparent;color:var(--text-2)}
.stbadge{display:inline-flex;gap:0.3125rem;align-items:center;font-size:0.75rem;line-height:1rem;font-weight:600;padding:3px 0.5rem;border-radius:62.4375rem;border:1px solid}
.st-gilt{color:var(--ok);border-color:var(--ok-line);background:var(--ok-bg)}
.st-ueberholt{color:var(--text-2);border-color:var(--border-strong);background:var(--surface-2);text-decoration:line-through}
.st-widersprochen{color:var(--warn);border-color:var(--warn-line);background:var(--warn-bg)}
.loadmore{display:flex;gap:0.75rem;align-items:center;justify-content:center;padding:1rem 0}
.prop{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);display:flex;flex-direction:column}
.prop-h{display:flex;flex-wrap:wrap;gap:0.5rem 0.875rem;align-items:center;justify-content:space-between;padding:0.875rem 1.25rem;border-bottom:1px solid var(--border)}
.prop-cmp{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18.75rem,100%),1fr));gap:0}
.prop-side{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:0.5rem}
.prop-side+.prop-side{border-left:1px solid var(--border)}
.prop-f{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center;padding:0.875rem 1.25rem;border-top:1px solid var(--border)}
.kbd2{font-family:var(--font-mono);font-size:0.75rem;min-width:1.25rem;height:1.25rem;display:inline-grid;place-items:center;padding:0 0.3125rem;border:1px solid currentColor;border-radius:0.25rem;opacity:.85}
.done-line{display:flex;gap:0.5rem;align-items:center;font-size:0.875rem;color:var(--text-2)}
.reg{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));gap:1rem;align-items:start}
.reg-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card)}
.reg-col h3{font-size:0.9375rem;font-weight:600;padding:0.75rem 1rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between}
.reg-e{padding:0.625rem 1rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:0.375rem}
.reg-e:first-of-type{border-top:0}
.reg-e .rn{font-weight:600;font-size:0.9375rem}
.reg-e .ra{display:flex;flex-wrap:wrap;gap:0.25rem}
.filterchip{display:inline-flex;align-items:center;gap:0.375rem;min-height:2.25rem;padding:0 0.375rem 0 0.75rem;border-radius:62.4375rem;background:var(--text);color:var(--bg);font-size:0.875rem;font-weight:600}
.filterchip button{width:1.75rem;height:1.75rem;border-radius:50%;border:0;background:transparent;color:inherit;cursor:pointer;display:grid;place-items:center}

/* Nutzung */
.bars{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:0.375rem;align-items:end;height:8.75rem;padding:0.5rem 0 0;border-bottom:1px solid var(--border-strong)}
.bars span{background:var(--action);border-radius:3px 3px 0 0;min-height:2px}
.bars-x{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:0.375rem;font-size:0.6875rem;color:var(--text-2);text-align:center}

/* Rollenkarten */
.rolecards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12.5rem,100%),1fr));gap:0.5rem}

/* ---------- Responsiv ---------- */
@container (max-width: 53.75rem){
  .shell{flex-direction:column}
  .convbar{padding:0.5rem 0.75rem}
  .thread{padding:1rem 1rem 1rem}
  .ask-foot{padding:0.625rem 0.5rem 0.5rem}
  .a2-text{font-size:1.0625rem;line-height:1.75rem}
  .srow-body{padding-left:0}
  .beleg{left:0.5rem!important;right:0.5rem!important;top:auto!important;bottom:0.5rem!important;width:auto;position:fixed}
  .pop2{left:0!important;right:0!important;bottom:0!important;top:auto!important;width:100%;border-radius:1rem 1rem 0 0;position:fixed;max-height:85%}
  .sheet{top:auto;height:88%;width:100%;border-left:0;border-top:1px solid var(--border);border-radius:1rem 1rem 0 0}
  .rowh{display:none}
  .rowl{grid-template-columns:1fr auto;padding:0.625rem 0.875rem}
  .rowl .hide-s{display:none}
  .rowl .cl{display:inline}
  .setrow .sl{flex-basis:100%}
  .stmt{grid-template-columns:1fr auto;padding:0.75rem 0}
  .stmt-d{grid-column:1 / -1;display:flex;gap:0.5rem;align-items:baseline}
  .stmt-d .dd{display:inline}
  .stmt-beleg{grid-column:1 / -1}
  .prop-side+.prop-side{border-left:0;border-top:1px solid var(--border)}
  .tabs{margin:0 -1rem;padding:0 1rem}
  .hide-s{display:none!important}
  .phead .acts .btn{flex:1 1 auto}
  .unit-h,.unit-b,.unit-f{padding-left:1rem;padding-right:1rem}
}
@container (min-width: 53.8125rem){ .show-s{display:none!important} }

/* Umsetzung 10.10.2026 (Claude Code): Lage der Menüs im gebauten Rahmen. Keine neuen Farbwerte. */
.org-wrap,.acct-wrap{position:relative}
.org-wrap .menu{left:0;right:0;top:calc(100% + 0.25rem)}
.acct-wrap .menu{left:0;right:0;bottom:calc(100% + 0.5rem)}
.mbar .acct-wrap .menu{left:auto;right:0;bottom:auto;top:calc(100% + 0.5rem)}
.side .menu{min-width:0}
.orgsw-t{display:flex;flex-direction:column}
.menu-who{display:flex;flex-direction:column;padding:0.5rem 0.625rem 0.375rem}
.menu-note{padding:0.25rem 0.625rem 0.375rem;font-size:0.8125rem;margin:0}
.menu .seg{margin:2px 0.25rem 0.375rem;width:auto}
.runs{display:flex;flex-direction:column;gap:0.5rem}
.runs:not(:has(.runchip)){display:none}
.runchip .spin{width:0.75rem;height:0.75rem;color:var(--action)}
.side-head .spread{flex-wrap:nowrap;gap:0.5rem}
.menu .seg{display:flex}
.menu .seg button{padding:0 0.25rem;white-space:nowrap}

/* Umsetzung 10.10.2026 (Claude Code): Fragen, Beleg, Gespräche. Keine neuen Farbwerte. */
.page-ask{max-width:none;padding:0;gap:0}
.convbar .ctitle .n,.convbar .ctitle .m{margin:0}
.convbar-acts{gap:0.375rem;position:relative}
.menu-wrap{position:relative}
.menu-r{right:0;top:calc(100% + 0.375rem)}
.menu-wide{width:min(21.25rem,calc(100vw - 2rem))}
.menu-2{flex-direction:column;align-items:flex-start;justify-content:center;padding:0.375rem 0.625rem;min-height:3.25rem}
.menu-2 .meta{font-size:0.8125rem}
.menu-t{font-weight:500}
.actbar .menu-wrap .menu{left:0;top:calc(100% + 0.375rem)}
.qa2{display:flex;flex-direction:column;gap:1.5rem}
.q2 p{margin:0;white-space:pre-wrap}
.a2{position:relative}
.a2-text p{white-space:pre-line}
.a2-meta .spin{color:var(--action)}
.badge-s{min-height:1.375rem;font-size:0.75rem}
.skel-l{width:80%;height:1rem}
.skel-m{width:64%;height:1rem}
.beleg-t{display:flex;flex-direction:column}
.excerpt-meta{font-size:0.8125rem}
.srow:focus{outline:none}
.more2>summary{display:inline-flex;gap:0.375rem;align-items:center;min-height:2.5rem;padding:0 0.5rem;margin-left:-0.5rem;color:var(--text-2);font-size:0.875rem;cursor:pointer;border-radius:0.375rem;list-style:none}
.more2>summary::-webkit-details-marker{display:none}
.more2>summary:hover{color:var(--text);background:var(--surface-2)}
.more2[open]>summary svg{transform:rotate(180deg)}
label.tchip{cursor:pointer}
.tchip:has(input:checked),.tchip.is-on{background:var(--action-soft);border-color:var(--action);color:var(--action);font-weight:600}
.tchip:has(input:checked)::before,.tchip.is-on::before{content:"";width:0.625rem;height:0.375rem;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translate(1px,-1px)}
.tchip:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}
.tchip:has(input:disabled){opacity:.55;cursor:not-allowed}
.tchip.is-on{cursor:default}
.hero-colls{margin-top:0.5rem}
.ask-foot-in{position:relative}
#suchumfang{left:0;bottom:calc(100% + 0.5rem)}
.scope-fixed{cursor:default}
.scope-x{min-height:2.25rem;width:2.25rem}
.pending{padding:0.375rem 1rem 0;margin:0}
.cbox textarea{max-height:12.5rem;overflow-y:auto}
.label-plain{font-weight:400}
.su-period{align-items:flex-end}
.su-period .field{flex:1 1 8.75rem}
.field-narrow{flex:0 1 15rem}
.rl-off{font-weight:600;color:var(--text-2)}
.contra-value{margin:0}
#suchumfang{max-height:min(40rem,calc(100vh - 10rem))}
.beleg{max-height:min(32rem,70vh);overflow:auto}

/* Dokumentensuche v3 (Stil „Ruhiges Blatt“, 10.10.2026). Wird NACH app.css und app-v2.css geladen.
   Nur Darstellung: keine neuen Fachfunktionen, keine Textänderungen. Farbwerte aus tok.py, Kontraste in spec/tokens.json. */

/* ===== Farben ===== */
.t-hell,.t-geraet{
  --bg:#EEF0F8;--surface:#FFFFFF;--surface-2:#F4F5FA;--surface-3:#E7E9F2;--text:#171A2C;--text-2:#555A70;
  --border:#E2E4EE;--border-strong:#7D8299;--action:#4F46E5;--action-hover:#4338CA;--on-action:#FFFFFF;
  --action-soft:#EDECFD;--focus:#4F46E5;--focus-halo:#FFFFFF;--bubble:#E9E8FC;--nav-cur:#FFFFFF;
  --sheet-line:#E4E6F0;--border-mid:#CBCEDC;--seg-track:#E9EBF3;--seg-on:#FFFFFF;--error:#B42318;
  --error-bg:#FEF0EE;--error-line:#F1B4AC;--warn:#8A4B00;--warn-bg:#FEF4DF;--warn-line:#E8C27A;--ok:#17663A;
  --ok-bg:#E7F5EC;--ok-line:#97CDA9;--source:#0B5D66;--source-bg:#E3F2F3;--source-line:#91C7CC;--info-bg:#EFF0FD;
  --info-line:#BDC1F3;--nav-hover:rgba(23,26,44,.05);--scrim:rgba(23,26,44,.40);
  --shadow-sm:0 1px 2px rgba(23,26,44,.06),0 1px 1px rgba(23,26,44,.04);
  --shadow-sheet:0 1px 3px rgba(23,26,44,.05),0 0.5rem 1.5rem rgba(23,26,44,.04);
  --shadow-composer:0 0.25rem 1rem rgba(23,26,44,.08);--shadow:0 1rem 3rem rgba(23,26,44,.16);color-scheme:light;
}
.t-dunkel{
  --bg:#0E0F17;--surface:#171923;--surface-2:#1F2230;--surface-3:#2A2D3E;--text:#E9EAF3;--text-2:#A6AAC0;
  --border:#2A2D3E;--border-strong:#737892;--action:#A9A4FF;--action-hover:#C4C0FF;--on-action:#12121E;
  --action-soft:#272749;--focus:#A9A4FF;--focus-halo:#0E0F17;--bubble:#272749;--nav-cur:#1F2230;
  --sheet-line:#242738;--border-mid:#383B50;--seg-track:#0E0F17;--seg-on:#2A2D3E;--error:#FF8F86;
  --error-bg:#35181A;--error-line:#7A3A38;--warn:#F2C46D;--warn-bg:#2E240E;--warn-line:#6E5320;--ok:#7FD39B;
  --ok-bg:#11281B;--ok-line:#2F6B44;--source:#72D2DB;--source-bg:#0F2B30;--source-line:#2B6C73;--info-bg:#1C1E38;
  --info-line:#3B3E72;--nav-hover:rgba(255,255,255,.05);--scrim:rgba(0,0,0,.62);
  --shadow-sm:0 1px 2px rgba(0,0,0,.4);--shadow-sheet:0 1px 3px rgba(0,0,0,.4);
  --shadow-composer:0 0.25rem 1rem rgba(0,0,0,.45);--shadow:0 1rem 3rem rgba(0,0,0,.55);color-scheme:dark;
}
@media (prefers-color-scheme:dark){.t-geraet{
  --bg:#0E0F17;--surface:#171923;--surface-2:#1F2230;--surface-3:#2A2D3E;--text:#E9EAF3;--text-2:#A6AAC0;
  --border:#2A2D3E;--border-strong:#737892;--action:#A9A4FF;--action-hover:#C4C0FF;--on-action:#12121E;
  --action-soft:#272749;--focus:#A9A4FF;--focus-halo:#0E0F17;--bubble:#272749;--nav-cur:#1F2230;
  --sheet-line:#242738;--border-mid:#383B50;--seg-track:#0E0F17;--seg-on:#2A2D3E;--error:#FF8F86;
  --error-bg:#35181A;--error-line:#7A3A38;--warn:#F2C46D;--warn-bg:#2E240E;--warn-line:#6E5320;--ok:#7FD39B;
  --ok-bg:#11281B;--ok-line:#2F6B44;--source:#72D2DB;--source-bg:#0F2B30;--source-line:#2B6C73;--info-bg:#1C1E38;
  --info-line:#3B3E72;--nav-hover:rgba(255,255,255,.05);--scrim:rgba(0,0,0,.62);
  --shadow-sm:0 1px 2px rgba(0,0,0,.4);--shadow-sheet:0 1px 3px rgba(0,0,0,.4);
  --shadow-composer:0 0.25rem 1rem rgba(0,0,0,.45);--shadow:0 1rem 3rem rgba(0,0,0,.55);color-scheme:dark;
}}

/* ===== Basis ===== */
.app{
  --font-ui:"Plus Jakarta Sans","Segoe UI","Helvetica Neue",system-ui,sans-serif;
  --r-ctl:.625rem;--r-card:.875rem;--r-dlg:1.25rem;--r-sheet:1rem;--r-pill:62.4375rem;
  --side-w:16rem;--rail-w:4.5rem;--col:48rem;
}
.h1{font-size:1.75rem;line-height:2.25rem;font-weight:700;letter-spacing:-.02em}
.h2{font-size:1.25rem;line-height:1.75rem;font-weight:700;letter-spacing:-.01em}
.h3{font-weight:600}
.lead{font-size:1.0625rem;line-height:1.625rem}
.eyebrow,.menu-h{font-size:.75rem;line-height:1rem;font-weight:700;letter-spacing:.08em}
.skel{background:var(--surface-3)}

/* ===== Rahmen: getönter Grund, weißes Blatt ===== */
.shell{background:var(--bg)}
.main{
  --bg:var(--surface);               /* alles in der Hauptspalte liegt auf dem Blatt */
  background:var(--surface);margin:.5rem .5rem .5rem 0;border:1px solid var(--sheet-line);
  border-radius:var(--r-sheet);box-shadow:var(--shadow-sheet);min-height:calc(100vh - 1rem);overflow:clip;
}

/* Seitenleiste */
.side{width:var(--side-w);background:transparent;border-right:0;padding:1rem .75rem .75rem;gap:.75rem}
.side-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.brand{padding:.25rem .5rem;gap:.625rem}
.brand-mark{width:1.75rem;height:1.75rem;border-radius:.5625rem;background:var(--action)}
.brand-mark:after{border-color:var(--on-action)}
.brand-name{font-weight:700;letter-spacing:-.01em}
.railbtn{width:2.25rem;height:2.25rem;border-radius:var(--r-ctl);color:var(--text-2)}
.railbtn:hover{background:var(--nav-hover);color:var(--text)}
.orgsw{background:var(--surface);border:1px solid var(--sheet-line);border-radius:var(--r-ctl);box-shadow:var(--shadow-sm)}
.orgsw:hover{background:var(--surface)}
.orgmark{display:none}
.nav{gap:1px}
.nav-label{display:block;padding:.875rem .75rem .375rem;font-size:.6875rem;line-height:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}
.nav>li:first-child.nav-label{padding-top:.25rem}
.nav-a{min-height:2.5rem;padding:0 .75rem;gap:.75rem;border-radius:var(--r-ctl);font-size:.9375rem;font-weight:500}
.nav-a>.icon{color:var(--text-2)}
.nav-a:hover{background:var(--nav-hover)}
.nav-a.cur{background:var(--nav-cur);color:var(--text)!important;font-weight:600;box-shadow:var(--shadow-sm)}
.nav-a.cur>.icon{color:var(--action)}
.nav-sub{margin:.125rem 0 .375rem 1.5rem;padding-left:.625rem;border-left:1px solid var(--border-mid)}
.nav-sub .nav-a{min-height:2.25rem;font-size:.875rem;position:relative}
.nav-sub .nav-a.cur{background:transparent;box-shadow:none;color:var(--action)!important}
.nav-sub .nav-a.cur::before{content:"";position:absolute;left:calc(-.625rem - 1px);top:.5rem;bottom:.5rem;width:2px;border-radius:2px;background:var(--action)}
.nav-count{background:var(--action);color:var(--on-action)}
.nav-quiet .nav-a{font-size:.875rem}
.runchip{background:var(--surface);border:1px solid var(--sheet-line);box-shadow:var(--shadow-sm)}
.acct{border:0;background:transparent;border-radius:var(--r-ctl);min-height:3rem}
.acct:hover{background:var(--nav-hover)}
.avatar{background:var(--bubble);color:var(--text)}

/* Eingeklappte Seitenleiste (nur breit) */
@container (min-width: 53.8125rem){
  .side.rail{width:var(--rail-w);padding:1rem .625rem .75rem;align-items:center}
  .side.rail .side-top{flex-direction:column;gap:.5rem}
  .side.rail .brand{padding:.25rem}
  .side.rail .lbl,.side.rail .brand-name,.side.rail .brand-org{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .side.rail>nav,.side.rail .nav{width:100%}
  .side.rail .nav{align-items:center}
  .side.rail .nav-label{height:1px;width:2rem;padding:0;margin:.5rem auto;background:var(--border-mid);overflow:hidden;font-size:0;line-height:0}
  .side.rail .nav>li:first-child.nav-label{display:none}
  .side.rail .nav-a{justify-content:center;padding:0;width:2.75rem;min-height:2.75rem;position:relative}
  .side.rail .nav-count{position:absolute;top:.125rem;right:.125rem;min-width:1.125rem;height:1.125rem;padding:0 .25rem;font-size:.6875rem}
  .side.rail .nav-sub,.side.rail .card,.side.rail .runchip>:not(.rt){display:none}
  .side.rail .runchip{padding:.625rem;align-items:center}
  .side.rail .orgsw{width:2.75rem;padding:0;justify-content:center}
  .side.rail .orgsw>svg{display:none}
  .side.rail .orgmark{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:.5rem;background:var(--surface-3);font-size:.8125rem;font-weight:700}
  .side.rail .acct{width:2.75rem;padding:0;justify-content:center}
  .side.rail .side-foot{align-items:center}
}

/* ===== Buttons, Felder ===== */
.btn{border-radius:var(--r-ctl);font-weight:600;padding:0 1.125rem}
.btn-p{box-shadow:var(--shadow-sm)}
.btn-s{border-color:var(--border-mid);background:var(--surface)}
.btn-s:hover{background:var(--surface-2);border-color:var(--border-strong)}
.btn-g:hover{background:var(--action-soft)}
.btn[disabled],.btn.is-disabled{box-shadow:none}
.iconbtn:hover,.ibtn:hover{background:var(--surface-2)}
.ibtn{border-radius:var(--r-ctl)}
.ibtn.bordered{border-color:var(--border-mid)}
.input,.select,.textarea{border-radius:var(--r-ctl);border-color:var(--border-strong);background:var(--surface)}
.input:hover,.select:hover,.textarea:hover{border-color:var(--text-2)}
.radio-card{border-color:var(--border-mid);border-radius:var(--r-card)}
.radio-card.sel{border-color:var(--action)}
.secret{background:var(--surface-2);border-color:var(--border);border-radius:var(--r-ctl)}

/* Chips */
.chip,.tchip,.ex,.scopebtn{border-color:var(--border-mid)}
.chip{min-height:2.5rem}
.app a.chip,.app a.tchip{text-decoration:none!important;color:var(--text)!important}
.app a.tchip[aria-pressed="true"],.app a.tchip[aria-current="page"]{color:var(--action)!important}
.chip.sel{background:var(--action-soft);color:var(--action);border-color:var(--action);font-weight:600}
.filterchip{background:var(--text);color:var(--bg)}

/* Segmentierte Auswahl: eine Spur, ein gewählter Teil (ersetzt .seg und .subtabs optisch) */
.seg,.subtabs,.segm{display:inline-flex;gap:.125rem;padding:.25rem;border:0;border-radius:var(--r-pill);background:var(--seg-track);overflow:visible;width:auto;align-self:flex-start;max-width:100%}
.seg button,.subtab,.segm>*{flex:1 0 auto;min-height:2.25rem;padding:0 .875rem;border:0;border-radius:var(--r-pill);background:transparent;color:var(--text);font:inherit;font-size:.875rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;text-decoration:none!important}
.seg button+button{border-left:0}
.seg button:hover,.subtab:hover,.segm>*:hover{background:var(--nav-hover)}
.seg button[aria-pressed="true"],.subtab[aria-selected="true"],.segm>[aria-pressed="true"],.segm>[aria-selected="true"],.segm>[aria-current="page"]{background:var(--seg-on);color:var(--text);font-weight:600;box-shadow:0 0 0 1px var(--border-strong),var(--shadow-sm)}
.menu .seg{display:flex;align-self:stretch}

/* Reiter der Sammlung: ruhiger, Unterstrich in Aktionsfarbe */
.tabs{gap:.25rem;border-bottom-color:var(--border)}
.tab{border-bottom-width:2px;font-weight:500;padding:0 .75rem}
.tab[aria-selected="true"],.tab.cur{font-weight:600}

/* ===== Flächen: Karten, Listen, Tabellen ===== */
.card,.ccard,.unit,.setlist,.tile,.prop,.reg-col,.list,.inline-form,.tree,.dzone,.counter{border-color:var(--border);border-radius:var(--r-card)}
.card,.ccard,.tile{box-shadow:none}
.tile:hover{border-color:var(--border-mid);box-shadow:var(--shadow-sm)}
.counter{background:var(--surface-2);border-color:transparent}
.counter.c-warn{border-color:var(--warn-line)}
.counter.c-err{border-color:var(--error-line)}
.badge,.stbadge,.tag{border-radius:var(--r-pill)}
.badge{border-color:transparent}
.b-ok{border-color:var(--ok-line)}.b-warn{border-color:var(--warn-line)}.b-err{border-color:var(--error-line)}.b-src{border-color:var(--source-line)}
.b-info{border-color:var(--info-line)}
.note{border-radius:var(--r-card)}

/* Tabellen ohne Rahmen, nur Haarlinien */
.rows,.list{border:0;border-radius:0;background:transparent;overflow:visible}
.rowh,.list-head{background:transparent;min-height:2.5rem;font-size:.75rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--border)}
.rowl,.li{border-top:0;border-bottom:1px solid var(--border)}
.rowl:hover{background:var(--surface-2)}
.rowl.sel{background:var(--action-soft)}
.rowh,.rowl{padding:0 .75rem}

/* ===== Fragen ===== */
.convbar{background:var(--surface);border-bottom:1px solid var(--border);padding:1rem 2.5rem}
.convbar-in,.ask-foot-in{max-width:var(--col)}
.convbar .ctitle .n{font-size:1.125rem;line-height:1.5rem;font-weight:700;letter-spacing:-.01em}
.convbar .ctitle .m{font-size:.8125rem}
.thread{max-width:var(--col);padding:2rem 2.5rem;gap:2rem}
.q2{background:var(--bubble);border-radius:1.25rem 1.25rem .375rem 1.25rem;padding:.75rem 1.125rem;max-width:min(36rem,88%)}
.q2 .who{font-size:.75rem;font-weight:500;color:var(--text-2)}
.a2{gap:1rem}
.a2-meta{gap:.375rem .625rem;font-size:.8125rem}
.a2-meta::before{content:"";width:1.25rem;height:1.25rem;border-radius:.375rem;background:var(--action);flex:none}
.a2-text{font-family:var(--font-ui);font-size:1.0625rem;line-height:1.75rem}
.a2-text p+p{margin-top:.875rem}
.cite2{border-radius:.375rem}
.quote{font-family:var(--font-read);border-left:3px solid var(--source-line);border-radius:.25rem .5rem .5rem .25rem}
.srcl{border-top:0}
.srcl-h{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;padding:.5rem 0 .25rem}
.srow{border-bottom:1px solid var(--border)}
.srow-n{border-radius:.5rem}
.srow-main{border-radius:var(--r-ctl)}
.beleg{border-radius:var(--r-card);border-color:var(--source-line)}
.actbar .sep{background:var(--border)}

/* Eingabefeld */
.ask-foot{background:linear-gradient(to bottom,transparent,var(--surface) 1.25rem)}
.cbox{border-radius:1.25rem;border-color:var(--border-strong);box-shadow:var(--shadow-composer)}
.cbox:focus-within{border-color:var(--action);box-shadow:0 0 0 1px var(--action),var(--shadow-composer)}
.cbox-row{padding:.5rem .5rem .5rem 1.125rem}
.sendbtn{border-radius:var(--r-pill)}
.scopebtn{background:var(--surface-2)}

/* Leerer Start: Titel und Eingabefeld gemeinsam mittig (Produktion: Klasse .is-empty an .ask) */
.ask.is-empty .thread,.ask:has(.hero-empty) .thread{flex:0 0 auto;margin-top:auto;padding-bottom:1rem}
.ask.is-empty .ask-foot,.ask:has(.hero-empty) .ask-foot{position:static;background:none;margin-bottom:auto;padding-bottom:4rem}
.hero-empty{align-items:center;text-align:center;padding:0;gap:.75rem}
.hero-empty .h1{font-size:2rem;line-height:2.5rem;letter-spacing:-.025em}
.hero-empty .lead{max-width:34rem}
.hero-empty .fgroup legend{margin-inline:auto}
.hero-empty .tchips,.examples{justify-content:center}

/* ===== Überblick als Zeitleiste ===== */
.grp-h{background:var(--surface);border-bottom:0;font-size:.75rem;line-height:1rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:1.25rem 0 .5rem}
.stmt{position:relative;grid-template-columns:7rem minmax(0,1fr) auto;column-gap:2.5rem;padding:.75rem .25rem;border-bottom:0}
.stmt::before{content:"";position:absolute;left:calc(8.5rem - 1px);top:0;bottom:0;width:2px;background:var(--border-mid)}
.stmt::after{content:"";position:absolute;left:calc(8.5rem - .4375rem);top:1.125rem;width:.875rem;height:.875rem;border-radius:50%;background:var(--surface);border:2px solid var(--action);box-sizing:border-box}
.stmt:has(.st-gilt)::after{border-color:var(--ok)}
.stmt:has(.st-widersprochen)::after{border-color:var(--warn)}
.stmt:has(.st-ueberholt)::after{border-color:var(--border-strong);background:var(--surface-2)}
.stmt.open{background:transparent}
.stmt.open .stmt-m,.stmt.open .stmt-beleg{position:relative}
.stmt-d{color:var(--text)}

/* ===== Überlagerungen ===== */
.menu,.pop,.pop2{border-color:var(--sheet-line);border-radius:var(--r-card)}
.dlg{border-color:var(--sheet-line);border-radius:var(--r-dlg)}
.dlg-f{border-top-color:var(--border)}
.sheet{border-left-color:var(--border)}
.sheet-h,.sheet-f{border-color:var(--border)}
.toast{border-radius:var(--r-card)}

/* ===== Öffentliche Seiten ===== */
.public-card{border-color:var(--sheet-line);border-radius:1.25rem;box-shadow:var(--shadow-sheet);padding:2.5rem}

/* ===== Schmal ===== */
@container (max-width: 53.75rem){
  .main{margin:0;border-radius:var(--r-sheet) var(--r-sheet) 0 0;border-bottom:0;min-height:calc(100vh - 3.75rem)}
  .mbar{background:var(--bg);border-bottom:0}
  .side.open{background:var(--bg);border-radius:0 var(--r-sheet) var(--r-sheet) 0}
  .railbtn{display:none}
  .convbar{padding:.625rem 1rem}
  .thread{padding:1.25rem 1rem;gap:1.5rem}
  .q2{max-width:92%;align-self:flex-end}
  .a2-text{font-size:1rem;line-height:1.625rem}
  .hero-empty .h1{font-size:1.625rem;line-height:2.125rem}
  .ask.is-empty .ask-foot,.ask:has(.hero-empty) .ask-foot{padding-bottom:1.5rem}
  .stmt{grid-template-columns:minmax(0,1fr) auto;column-gap:.75rem;padding:.75rem 0 .75rem 1.75rem}
  .stmt::before{left:calc(.4375rem - 1px)}
  .stmt::after{left:0;top:1rem}
  .rowl{padding:.625rem .75rem}
  .public-card{padding:1.75rem 1.25rem}
  .seg,.subtabs,.segm{max-width:100%;overflow-x:auto}
}

/* ===== Erzwungene Farben (Windows-Kontrastmodus): Auswahl nicht nur über Fläche und Schatten ===== */
@media (forced-colors: active){
  .main,.cbox,.q2,.public-card{border:1px solid CanvasText}
  .nav-a.cur,.seg button[aria-pressed="true"],.subtab[aria-selected="true"],.segm>[aria-pressed="true"],.segm>[aria-selected="true"],.segm>[aria-current="page"]{outline:2px solid Highlight;outline-offset:-2px}
  .stmt::before,.stmt::after{forced-color-adjust:none;background:CanvasText;border-color:CanvasText}
}

/* Umsetzung 10.10.2026 (Claude Code): Sammlung mit Reitern, Seitenblatt, Karten. Keine neuen Farbwerte. */
a.tchip{text-decoration:none!important}
a.tchip[aria-current]{background:var(--action-soft);border-color:var(--action);color:var(--action)!important;font-weight:600}
a.tchip .meta{font-size:0.75rem}
.statusline .spin,.minirun .spin,.spin-s{width:0.75rem;height:0.75rem;color:var(--action)}
.row-acts{gap:0.25rem;justify-content:flex-end}
.btn-row{min-height:2.25rem}
.ccard-main{gap:0.25rem;min-width:0}
.todo{gap:0.375rem 1rem}
.todo a{font-weight:600}
.card-links{gap:0.25rem 1rem}
.card-list{list-style:none;margin:0;padding:0}
.kv-wide{grid-template-columns:minmax(10rem,15rem) minmax(0,1fr)}
.strong{font-weight:600}
.sheet-t{gap:0.25rem;min-width:0}
.sheet-t .h2{overflow-wrap:anywhere}
.summary-strong{cursor:pointer;min-height:2rem;font-weight:600}
#blatt .scrim-l{position:fixed;inset:0}
#blatt .sheet{position:fixed;top:0.5rem;right:0.5rem;bottom:0.5rem;border-radius:var(--r-card)}
@container (max-width: 53.75rem){
  #blatt .sheet{top:auto;left:0;right:0;bottom:0;border-radius:var(--r-sheet) var(--r-sheet) 0 0}
}
.row-end{align-items:flex-end}
.gap-2{gap:0.125rem}
.gap-8{gap:0.5rem}
.radio-card .input-minutes{width:6rem;height:auto;margin:0;flex:none}
.dzone-t{gap:0.125rem;max-width:40rem}
.btn-danger-s{color:var(--error)!important;border-color:var(--error-line)}
.check-box{width:1.25rem;height:1.25rem;accent-color:var(--action)}
.saved-line{color:var(--ok);font-weight:600}

/* Umsetzung 10.10.2026 (Claude Code): Überblick. Keine neuen Farbwerte. */
.subtab{text-decoration:none!important;color:var(--text)!important}
.subtab[aria-current]{background:var(--seg-on,var(--surface));font-weight:600;box-shadow:0 0 0 1px var(--border-strong),var(--shadow-sm,none)}
.ov-note{max-width:32.5rem;margin:0}
.ov-off{padding:2rem;gap:0.875rem;align-items:flex-start}
.ov-off .small{max-width:40rem}
.grp-n{font-weight:400}
.quote-s{font-size:1rem;line-height:1.625rem}
.bar-note{max-width:26.25rem}
.note .spin{width:1rem;height:1rem;color:var(--action);flex:none;margin-top:0.125rem}
.reg-empty{padding:0.625rem 1rem;margin:0}
.reg-files{padding-left:0.25rem;margin:0}
.filterchip a{width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center;color:inherit!important}
.stmt-x{margin:0}

/* Umsetzung 10.10.2026 (Claude Code): Einstellungen. Keine neuen Farbwerte. */
.page-ki{gap:1rem}
.ki-leiste{position:sticky;bottom:0.75rem;box-shadow:var(--shadow);gap:0.625rem;z-index:4}
.ki-leiste .htmx-indicator:not(.htmx-request){display:none}
.keys>summary{cursor:pointer;list-style:none}
.keys>summary::-webkit-details-marker{display:none}
.ovbar-center{align-items:center}
.ovbar .field-narrow{flex:0 1 16.25rem}
.warn-text{color:var(--warn)}
.radio-card:has(input:checked){border:2px solid var(--action);padding:0.8125rem 0.9375rem;background:var(--action-soft)}
.radio-card.sel:has(input[type="radio"]:not(:checked)){border:1px solid var(--border-mid);padding:0.875rem 1rem;background:var(--surface)}
.dzone-s{padding:0.75rem 0.875rem}
.acts.row{gap:0.5rem;flex-wrap:nowrap}
details.setlist>summary{cursor:pointer;list-style:none}
details.setlist>summary::-webkit-details-marker{display:none}
.sl-plain{font-weight:500}
.cost-info{background:var(--info-bg);border-color:var(--info-line)}
.radio-link{color:var(--text)!important;text-decoration:none!important}
.radio-dot{width:1.25rem;height:1.25rem;margin-top:2px;border:2px solid var(--border-strong);border-radius:50%;flex:none}

/* Breite (10.10.2026, Entscheidung Alexander, Option 1): Listen und Tabellen nutzen die volle Breite, Formulare und
   Fließtext behalten eine lesbare Breite und stehen mittig. Abweichung vom Entwurf, siehe docs/ux/ux-konzept.md. */
.page{max-width:120rem;margin-inline:auto}
.page-narrow{max-width:51.25rem}
.page-ask{max-width:none}
.phead .t .meta,.page>.note,.page>p.meta,.page>p.small{max-width:60rem}
.card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));gap:1rem;align-items:start}
.ovbar .field{max-width:40rem}
.stmt-x,.stmt-beleg{max-width:62rem}
