.rr-hero { padding: clamp(1.7rem, 3vw, 2.8rem) 0 1rem; }
.rr-hero h1 { margin: .4rem 0 .7rem; font-size: clamp(2.6rem, 4.7vw, 4.2rem); line-height: 1.08; letter-spacing: -.05em; }
.rr-lead { margin: .6rem 0; font-size: clamp(1.25rem, 2.3vw, 1.8rem); line-height: 1.35; font-weight: 650; letter-spacing: -.025em; }
.rr-intro { color: var(--ink-soft); font-size: .98rem; }
.rr-hero-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.5rem; align-items: center; margin-top: 1rem; font-size: .77rem; color: var(--ink-soft); }
.rr-hero-meta a { display: inline-flex; align-items: center; min-height: 2.75rem; text-decoration: underline; text-underline-offset: .2em; }
.rr-main { padding: .8rem 0 3rem; }
#vorhaben, #methodik, #aenderungen { scroll-margin-top: 7rem; }
.rr-filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) auto auto; gap: 1rem; align-items: end; padding: 1rem 1.2rem; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); }
.rr-filters label { min-width: 0; display: grid; gap: .4rem; font-size: .78rem; font-weight: 700; }
.rr-filters input, .rr-filters select { min-width: 0; width: 100%; min-height: 2.85rem; border: 1px solid #aaa39a; border-radius: .35rem; padding: .6rem .7rem; background: var(--canvas); color: var(--ink); font: inherit; font-weight: 400; font-size: .85rem; }
.rr-filters button { min-height: 2.85rem; font-size: .8rem; }
.rr-more-filters summary { cursor: pointer; padding: .8rem .2rem; font-size: .8rem; min-height: 2.85rem; }
.rr-more-filters[open] { grid-column: 1 / -1; grid-row: 2; }
.rr-more-filters > div { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding-bottom: .5rem; }
.rr-results-meta { display: flex; justify-content: space-between; gap: .5rem 1.2rem; flex-wrap: wrap; font-size: .78rem; color: var(--ink-soft); margin: 1rem 0; }
.rr-results-meta p { margin: 0; }
.rr-grid { display: grid; gap: 1rem; }
.rr-card { min-width: 0; padding: 1.4rem 1.7rem .5rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); scroll-margin-top: 7rem; }
.rr-card:target { outline: 2px solid #6c8378; outline-offset: 3px; }
.rr-card-overview { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 2.4rem; }
.rr-card-meta { display: flex; flex-wrap: wrap; gap: .6rem 1rem; align-items: center; }
.rr-card-review { font-size: .72rem; line-height: 1.6; color: var(--ink-soft); }
.rr-status { display: inline-block; border-radius: 2rem; font-size: .7rem; line-height: 1.4; font-weight: 700; padding: .4rem .65rem; background: #e6e9ed; color: #263e53; }
.rr-status--planned { background: #ede6db; color: #554633; }
.rr-status--inforce { background: #deebe4; color: #264f3c; }
.rr-status--partial { background: #e3e9de; color: #3c4d2f; }
.rr-card h2 { font-size: clamp(1.3rem, 2.1vw, 1.8rem); line-height: 1.2; margin: .85rem 0 .5rem; letter-spacing: -.035em; }
.rr-takeaway { font-size: .92rem; line-height: 1.65; max-width: 62ch; margin-bottom: .7rem; }
.rr-next { border-left: 1px solid var(--line); padding-left: 1.5rem; }
.rr-next > span { display: block; font-size: .7rem; color: var(--ink-soft); }
.rr-next > strong { display: block; font-size: .95rem; margin: .4rem 0; }
.rr-next > p { font-size: .8rem; line-height: 1.65; color: var(--ink-soft); margin: 0; }
.rr-details { margin-top: .8rem; border-top: 1px solid var(--line); }
.rr-details > summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; min-height: 3rem; font-size: .87rem; font-weight: 700; }
.rr-details > summary::-webkit-details-marker { display: none; }
.rr-details[open] > summary span { transform: rotate(45deg); }
.rr-details > summary span { font-size: 1.5rem; font-weight: 400; }
.rr-permalink { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: .72rem; color: var(--ink-soft); }
.rr-detail-body { max-width: 76rem; padding: .5rem 0 1rem; font-size: .92rem; }
.rr-detail-body h3 { font-size: 1.2rem; margin: 1.7rem 0 1rem; }
.rr-subtitle { color: var(--ink-soft); font-size: .8rem; }
.rr-boundary { border-left: 3px solid #a7b2bd; padding: .5rem 0 .5rem 1rem; margin: 1rem 0; font-size: .86rem; color: var(--ink-soft); }
.rr-changes { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.rr-change { border: 1px solid var(--line); border-radius: .4rem; padding: 1.2rem; min-width: 0; }
.rr-change h4 { font-size: 1rem; line-height: 1.4; margin: 0 0 1rem; }
.rr-change dl { margin: 0; }
.rr-change dt { margin-top: .85rem; font-size: .73rem; font-weight: 700; color: var(--ink-soft); }
.rr-change dd { margin: .2rem 0 .6rem; font-size: .85rem; line-height: 1.65; }
.rr-evidence { display: block; margin: .7rem 0; font-size: .72rem; line-height: 1.8; }
.rr-evidence a { text-decoration: underline; text-underline-offset: .15em; }
.rr-locator { font-size: .7rem; color: var(--ink-soft); }
.rr-editorial { background: #eee9e1; margin-top: 1.5rem; padding: 1.4rem; border-radius: .4rem; }
.rr-editorial h3 { margin: .5rem 0; }
.rr-editorial h4 { margin: 1rem 0 .4rem; font-size: .88rem; }
.rr-editorial p { font-size: .88rem; line-height: 1.7; }
.rr-editorial .rr-action-intro { font-size: .76rem; color: var(--ink-soft); }
.rr-history { margin: 1.5rem 0; }
.rr-history summary, .rr-legend summary { cursor: pointer; padding: .75rem 0; font-size: .88rem; font-weight: 700; }
.rr-timeline { padding: 0 0 0 1.1rem; list-style: none; border-left: 1px solid #b6c3ca; }
.rr-timeline li { padding-bottom: 1rem; }
.rr-timeline time { font-size: .75rem; color: var(--ink-soft); }
.rr-timeline h4 { font-size: .95rem; margin: .3rem 0; }
.rr-timeline p { font-size: .85rem; }
.rr-sources { padding-left: 1.2rem; }
.rr-sources li { font-size: .85rem; margin-bottom: 1rem; overflow-wrap: anywhere; }
.rr-sources span { display: block; font-size: .73rem; margin-top: .3rem; color: var(--ink-soft); }
.rr-related { display: grid; gap: .5rem; border-top: 1px solid var(--line); padding-top: 1rem; margin-top: 1rem; font-size: .84rem; font-weight: 700; }
.rr-related a { padding: .4rem 0; }
.rr-selection-note { font-size: .76rem; color: var(--ink-soft); margin-top: 1rem; max-width: 95ch; }
.rr-empty { padding: 2rem; border: 1px solid var(--line); border-radius: var(--radius); }
.rr-empty h2 { font-size: 1.4rem; }
.rr-empty p { margin: .75rem 0 1.2rem; }
.rr-method > h2 { margin: .7rem 0 2rem; font-size: clamp(1.7rem, 3vw, 2.7rem); }
.rr-method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; }
.rr-method-grid h3, .rr-log h3 { font-size: 1.15rem; margin: 1rem 0 .6rem; }
.rr-method-grid p, .rr-log p { font-size: .93rem; color: var(--ink-soft); margin-bottom: 1rem; }
.rr-log { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.rr-log time { font-size: .78rem; }
.rr-legend { border-top: 1px solid var(--line); margin-top: 2rem; padding-top: 1rem; }
.rr-legend dl { display: grid; grid-template-columns: minmax(9rem, .65fr) 2fr; gap: .75rem 2rem; margin-top: 1.4rem; font-size: .9rem; }
.rr-legend dt { font-weight: 700; }
.rr-legend dd { margin: 0; color: var(--ink-soft); }
.rr-footer { display: grid; grid-template-columns: 1.5fr 1fr; align-items: center; gap: 3rem; }
.rr-footer h2 { margin: .7rem 0 1rem; font-size: clamp(1.8rem, 3vw, 2.8rem); }
.rr-footer .policy-actions { align-items: start; flex-direction: column; }
.rr-stale, .rr-anchor-note { background: #f2e5d2; border-left: 3px solid #936421; padding: 1rem; font-size: .85rem; }
.rr-hero :focus-visible, .rr-main :focus-visible, .rr-method :focus-visible { outline: 3px solid #4c758b; outline-offset: 4px; }
.rr-filters[hidden], .rr-card[hidden], .rr-empty[hidden], .rr-stale[hidden], .rr-anchor-note[hidden], .rr-action[hidden] { display: none; }
@media (max-width: 900px) { .rr-filters { grid-template-columns: 1fr 1fr; } .rr-more-filters[open] { grid-row: auto; } .rr-changes { grid-template-columns: 1fr; } }
@media (max-width: 600px) {
  .rr-hero { padding-top: 1.5rem; } .rr-intro { font-size: .9rem; } .rr-hero-meta { gap: .1rem 1rem; } .rr-hero-meta > span { flex-basis: 100%; }
  .rr-filters { padding: .8rem; gap: .6rem; } .rr-filters > label { grid-column: 1 / -1; } .rr-filters input, .rr-filters select { font-size: 1rem; } .rr-more-filters > div { grid-template-columns: 1fr; }
  .rr-card { padding: 1.1rem 1.1rem .5rem; scroll-margin-top: 6rem; } .rr-card-overview, .rr-method-grid, .rr-footer, .rr-log { grid-template-columns: 1fr; gap: 1rem; } .rr-next { border-left: 0; padding: .5rem 0 0; border-top: 1px solid var(--line); } .rr-next > p { margin-bottom: .3rem; }
  .rr-card h2 { font-size: 1.5rem; } .rr-card-meta { gap: .5rem; } .rr-change, .rr-editorial { padding: 1rem; } .rr-method-grid { gap: .5rem; } .rr-legend dl { display: block; } .rr-legend dd { margin: .4rem 0 1.1rem; } .rr-hero-meta, .rr-takeaway { overflow-wrap: anywhere; }
}
@media print { .rr-filters, .rr-permalink, .rr-footer, .rr-hero-meta a { display: none; } .rr-changes { display: block; } .rr-card, .rr-change { break-inside: avoid; margin-bottom: 1rem; } }

.rr-focus-link { margin: .5rem 0; font-size: .85rem; font-weight: 700; }
.rr-focus-link a { display: inline-block; padding: .4rem 0; text-decoration: underline; text-underline-offset: .2em; }
.rf-width { max-width: 1100px; }
.rf-back { display: block; width: fit-content; padding: .4rem 0; margin-bottom: 1.4rem; font-size: .8rem; }
.rf-hero h1 { max-width: 100%; font-size: clamp(2.1rem,4vw,3.6rem); overflow-wrap: anywhere; hyphens: auto; }
.rf-intro { max-width: 78ch; line-height: 1.75; font-size: 1rem; }
.rf-reviewed { font-size: .74rem; color: var(--ink-soft); margin: 1.2rem 0; }
.rf-nav { display: flex; flex-wrap: wrap; gap: .15rem 1.2rem; border-block: 1px solid var(--line); margin-top: 1.5rem; padding: .6rem 0; }
.rf-nav a { display: inline-flex; align-items: center; min-height: 2.6rem; font-size: .8rem; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.rf-section { padding: 2.6rem 0; scroll-margin-top: 6rem; border-bottom: 1px solid var(--line); }
.rf-section h2 { font-size: clamp(1.65rem,3vw,2.4rem); margin: .65rem 0 1.3rem; line-height: 1.18; letter-spacing: -.035em; }
.rf-section h3 { font-size: 1.06rem; line-height: 1.4; margin: .7rem 0; }
.rf-section p { font-size: .9rem; line-height: 1.75; }
.rf-section-intro { max-width: 80ch; color: var(--ink-soft); margin-bottom: 1.6rem; }
.rf-status-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.rf-status-grid > div { padding: 1.3rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); }
.rf-status-grid h3 { font-size: 1.2rem; margin-top: 1.1rem; }
.rf-status-grid p { margin-bottom: 0; }
.rf-section .rf-evidence, .rf-evidence { font-size: .72rem; line-height: 1.8; margin: .8rem 0; overflow-wrap: anywhere; }
.rf-evidence a, .rf-note a { text-decoration: underline; text-underline-offset: .15em; }
.rf-section .rf-note { color: var(--ink-soft); font-size: .82rem; max-width: 96ch; }
.rf-measures { display: grid; gap: .75rem; }
.rf-measure { border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); scroll-margin-top: 6rem; min-width: 0; }
.rf-measure:target { outline: 2px solid #6c8378; outline-offset: 3px; }
.rf-measure > summary { cursor: pointer; list-style: none; display: grid; grid-template-columns: minmax(0,1fr) 11rem 1.2rem; align-items: center; gap: 1.2rem; padding: 1.1rem 1.4rem; }
.rf-measure > summary::-webkit-details-marker { display: none; }
.rf-measure-main { display: grid; gap: .4rem; }
.rf-state { font-size: .66rem; font-weight: 750; color: #3c4d2f; }
.rf-state--review { color: #705017; }
.rf-measure-title { font-size: 1.05rem; font-weight: 750; line-height: 1.4; }
.rf-measure-summary { font-size: .82rem; line-height: 1.6; color: var(--ink-soft); }
.rf-when { font-size: .75rem; line-height: 1.6; font-weight: 650; }
.rf-plus { font-size: 1.5rem; transition: transform .1s; }
.rf-measure[open] .rf-plus { transform: rotate(45deg); }
.rf-measure-body { padding: .2rem 1.4rem 1rem; border-top: 1px solid var(--line); }
.rf-measure-body h3 { margin-top: 1.25rem; font-size: .92rem; }
.rf-measure-body h3 span { font-size: .75rem; font-weight: 400; color: var(--ink-soft); }
.rf-measure-body > p { max-width: 91ch; }
.rf-section .rr-locator { font-size: .72rem; }
.rf-timeline { list-style: none; padding: 0; margin: 0; }
.rf-timeline > li { display: grid; grid-template-columns: 12.5rem minmax(0,1fr); gap: 1.8rem; padding: 1.3rem 0; border-top: 1px solid var(--line); }
.rf-timeline > li > strong { font-size: .86rem; padding-top: .2rem; line-height: 1.6; }
.rf-timeline h3 { margin-top: 0; }
.rf-open-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 2.5rem; }
.rf-preparation { margin: 1.5rem 0; padding: 2rem; border: 0; border-radius: var(--radius); background: #eee9e1; }
.rf-preparation ol { padding-left: 1.4rem; }
.rf-preparation li { padding-left: .6rem; margin-top: 1.5rem; }
.rf-preparation li::marker { font-weight: 750; }
.rf-preparation p { max-width: 86ch; }
.rf-page :focus-visible { outline: 3px solid #4c758b; outline-offset: 4px; }
.rf-deep { border-top: 1px solid var(--line); padding: 1.4rem 0 .6rem; margin-top: 1.4rem; }
.rf-deep > p, .rf-deep li { max-width: 88ch; }
.rf-section .rf-deep-label { font-size: .68rem; font-weight: 750; color: #705017; margin: 0 0 .45rem; }
.rf-deep h3 { font-size: 1.1rem; margin-top: .3rem; }
.rf-deep--scenario { padding: 1.4rem; background: #eee9e1; border: 1px solid var(--line); border-radius: var(--radius); }
.rf-deep ul { padding-left: 1.2rem; }
.rf-deep li { padding-left: .2rem; font-size: .86rem; line-height: 1.75; margin: .65rem 0; }
.rf-table { border-collapse: collapse; table-layout: fixed; width: 100%; margin: 1.3rem 0; font-size: .82rem; line-height: 1.65; }
.rf-table caption { text-align: left; font-weight: 700; margin-bottom: .65rem; }
.rf-table th, .rf-table td { text-align: left; vertical-align: top; padding: .85rem; border: 1px solid var(--line); overflow-wrap: anywhere; }
.rf-table th:first-child { width: 35%; }
.rf-table thead { background: #e8e3da; }
.rf-table tbody th { font-weight: 600; }
@media (max-width:600px) { .rf-deep--scenario { padding: 1rem .7rem; } .rf-table { font-size: .76rem; } .rf-table th, .rf-table td { padding: .6rem .45rem; } .rf-table th:first-child { width: 40%; } }
@media print { .rf-deep { break-inside: auto; } .rf-deep h3, .rf-table caption { break-after: avoid; } .rf-table tr { break-inside: avoid; } .rf-deep--scenario { background: none; } }
@media (max-width:800px) { .rf-status-grid { grid-template-columns: 1fr; } .rf-status-grid > div { padding: 1.15rem; } .rf-status-grid h3 { margin-top: .8rem; } }
@media (max-width:600px) {
  .rf-back { margin-bottom: 1rem; } .rf-hero h1 { font-size: 2.15rem; } .rf-intro { font-size: .93rem; }
  .rf-nav { gap: 0 1rem; } .rf-section { padding: 2rem 0; } .rf-measure > summary { grid-template-columns: minmax(0,1fr) 1rem; gap: .6rem; padding: 1.1rem; } .rf-measure-main { grid-column: 1; } .rf-plus { grid-column: 2; grid-row: 1; } .rf-when { grid-column: 1 / -1; } .rf-measure-body { padding: .2rem 1.1rem 1rem; } .rf-open-grid { grid-template-columns: 1fr; gap: .8rem; } .rf-timeline > li { grid-template-columns: 1fr; gap: .5rem; } .rf-preparation { padding: 1.3rem; } .rf-page { overflow-wrap: break-word; }
}
@media print { .rf-nav, .rf-back, .rf-plus, .rf-measure-body > .rr-permalink, .rf-page .rr-related { display: none; } .rf-status-grid { display: block; } .rf-measure { break-inside: avoid; } .rf-measure-body { content-visibility: visible; display: block; } .rf-section { padding: 1rem 0; } .rf-hero h1 { font-size: 2rem; } .rf-preparation { background: none; } }
