/* Lokalne dokumenty prawne KyroHUB.PL — wspólny design ze sklepem. */
.kyro-legal { --legal-surface: #15120b; --legal-line: rgba(255,255,255,.12); color: #ded8c9; }
.kyro-legal .page { width: min(calc(100% - 40px), var(--container)); margin: 0 auto; padding-top: 62px; }
.kyro-legal .hero, .kyro-legal .card { border: 1px solid var(--legal-line); border-radius: var(--radius); background: var(--legal-surface); box-shadow: var(--shadow); }
.kyro-legal .hero { position: relative; overflow: hidden; padding: clamp(30px, 6vw, 72px); background: linear-gradient(135deg, rgba(255,196,0,.10), transparent 45%), var(--legal-surface); }
.kyro-legal .hero::after { content:""; position:absolute; right:-100px; top:-120px; width:340px; aspect-ratio:1; border:1px solid rgba(255,196,0,.18); border-radius:50%; box-shadow:0 0 90px rgba(255,196,0,.08); }
.kyro-legal .eyebrow { margin: 0; }
.kyro-legal h1, .kyro-legal h2, .kyro-legal h3, .kyro-legal strong, .kyro-legal dt, .kyro-legal th { color: #fff; }
.kyro-legal h1 { position:relative; z-index:1; max-width:950px; margin:14px 0 0; font-size:clamp(2.4rem,6vw,5rem); line-height:.98; font-weight:950; letter-spacing:-.06em; }
.kyro-legal .lead { position:relative; z-index:1; max-width:940px; margin:22px 0 0; color:#aaa493; }
.kyro-legal .meta { display:flex; flex-wrap:wrap; gap:9px; margin-top:25px; }
.kyro-legal .badge { display:inline-flex; align-items:center; min-height:34px; padding:7px 11px; border:1px solid rgba(255,196,0,.20); border-radius:9px; background:rgba(255,196,0,.07); color:#d8c98e; font-size:.74rem; font-weight:800; }
.kyro-legal .layout { display:grid; grid-template-columns:minmax(240px,300px) minmax(0,1fr); gap:24px; margin-top:24px; align-items:start; }
.kyro-legal .toc { position:sticky; top:18px; max-height:calc(100vh - 36px); overflow:auto; padding:22px; }
.kyro-legal .toc h2 { margin:0 0 14px; font-size:1rem; }
.kyro-legal .toc ol { margin:0; padding-left:1.15rem; }
.kyro-legal .toc li { margin:.45rem 0; color:#746e61; }
.kyro-legal .toc a { color:#c7c0af; font-size:.84rem; text-decoration:none; }
.kyro-legal .toc a:hover { color:var(--gold); }
.kyro-legal main.card { min-width:0; padding:clamp(24px,5vw,60px); color:#ded8c9 !important; }
.kyro-legal main.card p, .kyro-legal main.card li, .kyro-legal main.card dd, .kyro-legal main.card td { color:#d8d2c3 !important; font-size:1rem; line-height:1.85; }
.kyro-legal main.card li::marker { color:#a99f8b; font-weight:800; }
.kyro-legal main.card section > p { max-width:92ch; }
.kyro-legal section { scroll-margin-top:24px; }
.kyro-legal section + section { margin-top:50px; padding-top:42px; border-top:1px solid var(--legal-line); }
.kyro-legal h2 { margin:0 0 20px; font-size:clamp(1.45rem,3vw,2.15rem); line-height:1.2; font-weight:900; }
.kyro-legal h2::after { content:""; display:block; width:54px; height:4px; margin-top:12px; border-radius:99px; background:var(--gold); }
.kyro-legal h3 { margin:30px 0 12px; font-size:1.12rem; font-weight:900; }
.kyro-legal p { margin:0 0 15px; }
.kyro-legal ul, .kyro-legal ol { padding-left:1.4rem; }
.kyro-legal li + li { margin-top:.58rem; }
.kyro-legal a { color:var(--gold); text-decoration:underline; text-underline-offset:.18em; }
.kyro-legal code { padding:.1em .35em; border-radius:5px; background:#090804; color:#f7d760; }
.kyro-legal .notice { margin-top:20px; padding:16px 18px; border:1px solid; border-left-width:4px; border-radius:11px; }
.kyro-legal .notice-warning { border-color:rgba(255,196,0,.38); background:rgba(255,196,0,.09); color:#e4d59e; }
.kyro-legal .notice-success { border-color:rgba(84,212,157,.35); background:rgba(84,212,157,.08); color:#a6e7c8; }
.kyro-legal .legal-summary { position:relative; z-index:1; margin-top:20px; padding:20px; border:1px solid rgba(255,196,0,.28); border-radius:12px; background:rgba(8,7,4,.72); }
.kyro-legal .legal-summary ul { display:grid; grid-template-columns:1fr 1fr; gap:8px 28px; margin:12px 0; }
.kyro-legal .legal-summary p { margin:10px 0 0; color:#8e887a; font-size:.82rem; }
.kyro-legal .placeholder { padding:.1em .35em; border:1px dashed var(--gold); background:rgba(255,196,0,.08); color:#ffe47f; font-weight:900; }
.kyro-legal .definition-list dt { margin-top:18px; font-weight:900; }
.kyro-legal .definition-list dd { margin:4px 0 0; }
.kyro-legal .table-wrap { overflow-x:auto; margin:20px 0; }
.kyro-legal table { width:100%; min-width:680px; border-collapse:collapse; }
.kyro-legal th, .kyro-legal td { padding:13px 14px; border:1px solid var(--legal-line); text-align:left; vertical-align:top; }
.kyro-legal th { background:rgba(255,196,0,.07); }
.kyro-legal .annex { padding:22px; border:1px dashed rgba(255,196,0,.28); border-radius:12px; background:#0e0c07; }
.kyro-legal .muted { color:#aaa392 !important; }
.kyro-legal .legal-footer { margin-top:24px; padding:22px; text-align:center; color:#8e887a; font-size:.82rem; }
.kyro-legal .legal-footer p { margin:5px 0; }
@media (max-width: 980px) { .kyro-legal .layout { grid-template-columns:1fr; } .kyro-legal .toc { position:static; max-height:none; } }
@media (max-width: 600px) { .kyro-legal .page { width:min(calc(100% - 24px), var(--container)); padding-top:36px; } .kyro-legal main.card { padding:24px 18px; } .kyro-legal .legal-summary ul { grid-template-columns:1fr; } }
@media print { .site-header,.site-footer,.kyro-legal .toc,.kyro-legal .notice-warning{display:none!important}.kyro-legal{color:#222}.kyro-legal .page{width:100%;padding:0}.kyro-legal .hero,.kyro-legal .card{border:0;box-shadow:none;background:#fff}.kyro-legal h1,.kyro-legal h2,.kyro-legal h3,.kyro-legal strong,.kyro-legal dt,.kyro-legal th{color:#000}.kyro-legal .layout{display:block} }
