.vorlage-layout{gap:var(--space-6);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=980px){.vorlage-layout{gap:var(--space-8);grid-template-columns:minmax(0,1fr) 280px}.vorlage-layout .vorlage-aside{grid-area:1/2}.vorlage-layout .legal-body{grid-area:1/1}}.vorlage-layout .legal-body{min-width:0;max-width:none}.vorlage-layout .legal-body>p,.vorlage-layout .legal-body>ul,.vorlage-layout .legal-body>ol,.vorlage-layout .legal-body>blockquote,.vorlage-layout .legal-body>h3{max-width:var(--max-reading)}.vorlage-layout .legal-body table{width:100%}.vorlage-aside{gap:var(--space-4);font-size:var(--text-sm);flex-direction:column;display:flex}@media (width>=980px){.vorlage-aside{top:var(--space-5);max-height:calc(100vh - var(--space-8));position:sticky;overflow-y:auto}}.vorlage-cta{padding:var(--space-3) var(--space-4);background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);text-align:center;transition:opacity var(--dur,.15s) var(--ease,ease);font-weight:600;text-decoration:none;display:block}.vorlage-cta:hover{opacity:.9}.vorlage-cta:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.vorlage-aside__hint{color:var(--color-text-muted);font-size:var(--text-xs);line-height:var(--leading-snug);margin:0}.vorlage-aside__toc{border-top:var(--border-hair);padding-top:var(--space-4)}.vorlage-aside__toc summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2);list-style:none}.vorlage-aside__toc summary::-webkit-details-marker{display:none}.vorlage-aside__toc summary:before{content:"▾ ";transition:transform var(--dur,.15s) var(--ease,ease);display:inline-block}.vorlage-aside__toc:not([open]) summary:before{transform:rotate(-90deg)}#vorlage-toc{flex-direction:column;gap:2px;display:flex}#vorlage-toc a{padding:var(--space-1) var(--space-2);color:var(--color-text);border-radius:var(--radius-sm);line-height:var(--leading-snug);border-left:2px solid #0000;text-decoration:none;display:block}#vorlage-toc a:hover{background:var(--color-bg-soft);border-left-color:var(--color-accent)}#vorlage-toc a.is-active{background:var(--color-bg-soft);border-left-color:var(--color-accent);font-weight:500}.vorlage-aside__refs{border-top:var(--border-hair);padding-top:var(--space-4)}.vorlage-aside__refs h3{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-text-muted);margin:0 0 var(--space-2) 0;font-weight:500}.vorlage-aside__refs ul{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.vorlage-aside__refs a{padding:var(--space-2) var(--space-3);background:var(--color-bg-soft);border-radius:var(--radius-sm);color:var(--color-text);line-height:var(--leading-snug);text-decoration:none;display:block}.vorlage-aside__refs a:hover{background:var(--color-bg-raised)}.vorlage-aside__refs a small{color:var(--color-text-muted)}.legal-body h2[id]{scroll-margin-top:var(--space-6)}.vorlage-textbox{background:var(--color-bg-soft);border:var(--border-hair);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);margin:var(--space-3) 0 var(--space-5) 0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-relaxed);white-space:pre-wrap;word-break:break-word;position:relative}.vorlage-textbox:before{content:""}.vorlage-copy-btn{top:var(--space-3);right:var(--space-3);font-family:var(--font-sans);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;background:var(--color-text);color:var(--color-bg);border:1px solid var(--color-text);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--dur,.15s) var(--ease,ease);padding:.45em .9em;font-weight:500;line-height:1;position:absolute}.vorlage-copy-btn:hover{opacity:.85}.vorlage-copy-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.vorlage-copy-btn[data-state=copied]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}
