/* Strony dokumentów (regulamin, polityka, standardy) */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --navy-deep:#0d1533; --navy-mid:#1c2d6b; --gold:#d4af37; --gold-light:#f0d060; --gold-pale:#f7e9a0;
  --cream:#fdf6e3; --muted:#b0bec5;
  --serif:'Playfair Display',serif; --sans:'Montserrat',sans-serif; --cormorant:'Cormorant Garamond',serif;
}
html { scroll-behavior:smooth; }
body { background:radial-gradient(ellipse 90% 50% at 50% 0%,rgba(29,52,120,.65) 0%,var(--navy-deep) 70%) no-repeat, var(--navy-deep); color:var(--cream); font:400 1rem/1.75 var(--sans); min-height:100vh; }
.doc-top { max-width:760px; margin:0 auto; padding:20px 20px 8px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--gold); text-decoration:none; font:700 .9375rem/1.2 var(--serif); letter-spacing:.08em; text-transform:uppercase; }
.brand svg { width:1.5rem; height:1.5rem; fill:currentColor; stroke:currentColor; stroke-width:1.5; stroke-linejoin:round; flex-shrink:0; }
.back { display:inline-flex; align-items:center; gap:6px; color:var(--gold-pale); text-decoration:none; font-size:.875rem; font-weight:500; min-height:44px; }
.back svg, .ic { width:1em; height:1em; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.back:hover, .brand:hover { color:var(--gold-light); }
a:focus-visible, summary:focus-visible { outline:2px solid var(--gold-light); outline-offset:3px; border-radius:4px; }

.doc { max-width:760px; margin:0 auto; padding:12px 20px 56px; }
.doc-card { background:rgba(21,32,80,.55); border:1px solid rgba(212,175,55,.2); border-radius:20px; padding:32px 28px 36px; position:relative; }
.doc-card::before { content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:60%; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.doc-label { font-size:.75rem; font-weight:600; letter-spacing:.3em; color:var(--gold); text-transform:uppercase; margin-bottom:12px; }
h1 { font:700 clamp(1.75rem,6vw,2.5rem)/1.2 var(--serif); color:var(--gold); letter-spacing:.02em; }
.meta { font-size:.875rem; color:var(--muted); margin:10px 0 24px; }
h2 { font:700 1.25rem/1.35 var(--serif); color:var(--gold-pale); margin:36px 0 12px; scroll-margin-top:16px; }
p, li { margin-bottom:12px; }
ul { padding-left:1.25rem; }
li { margin-bottom:8px; padding-left:4px; }
ol.doc-list, ul.doc-list { padding-left:1.5rem; }
li::marker { color:var(--gold); }
strong { font-weight:600; color:#fff; }
a { color:var(--gold-light); text-underline-offset:3px; }
a:hover { color:var(--gold-pale); }
.placeholder { color:#fff; background:rgba(212,175,55,.18); outline:1px dashed var(--gold); outline-offset:2px; }

.toc { border:1px solid rgba(212,175,55,.2); border-radius:14px; background:rgba(13,21,51,.45); margin-bottom:8px; }
.toc summary { cursor:pointer; padding:14px 18px; min-height:48px; font-size:.8125rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); list-style-position:inside; }
.toc ol { list-style:none; padding:0 18px 14px; }
.toc li { margin:0; padding:0; }
.toc a { display:block; padding:7px 0; font-size:.9375rem; color:var(--cream); text-decoration:none; border-top:1px solid rgba(212,175,55,.1); }
.toc a:hover { color:var(--gold-light); }

.kids { margin-top:40px; padding:24px 22px 12px; border-radius:16px; background:linear-gradient(135deg,rgba(212,175,55,.16),rgba(212,175,55,.05)); border:1px solid rgba(212,175,55,.45); }
.kids h2 { margin-top:0; color:var(--gold-light); }
.kids p { font-size:1.0625rem; line-height:1.8; }

.doc-more { margin-top:28px; }
.doc-more h2 { font-size:.8125rem; font-family:var(--sans); letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin:0 0 8px; }
.doc-more a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:10px 4px; color:var(--cream); text-decoration:none; border-top:1px solid rgba(212,175,55,.15); }
.doc-more a:hover { color:var(--gold-light); }

.doc-foot { max-width:760px; margin:0 auto; padding:8px 20px 48px; text-align:center; font-size:.875rem; color:var(--muted); }
.doc-foot a { color:var(--gold-pale); }
.doc-foot .tagline { font:italic 400 1.25rem/1.4 var(--cormorant); color:var(--gold-pale); margin-bottom:12px; }

@media (max-width:720px) { .doc-card { padding:26px 20px 30px; border-radius:16px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none !important; } }

code { font:500 .9em ui-monospace,SFMono-Regular,Menlo,monospace; background:rgba(212,175,55,.12); padding:1px 6px; border-radius:6px; color:var(--gold-pale); }
