/* Vzhled právních stránek DioPro. Navazuje na paletu index.html.
   Všechny třídy mají prefix p- (pravni), aby se nepotkaly s w- (e-shop)
   ani s třídami veřejné stránky. */

:root{
  --nebe:#1B4A8C; --nebe-tmave:#0F3266;
  --voda:#4FB8E8; --voda-bleda:#D6EFFA;
  --louka:#7FC24B; --slunce-tmave:#D9A93C;
  --platno:#FBF9F4; --text:#22303F; --text-tichy:#5A6B7B;
  --linka:#E3E8EE;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--platno); color:var(--text);
  font-family:var(--sans); font-size:17px; line-height:1.72;
}
.p-obal{max-width:860px; margin:0 auto; padding:0 20px}

/* --- lišta --- */
.p-lista{
  background:linear-gradient(180deg,#9FD9F2 0%,#C7EAF7 100%);
  border-bottom:1px solid rgba(27,74,140,.14); padding:16px 0;
}
.p-lista .p-obal{display:flex; flex-wrap:wrap; align-items:center; gap:10px 22px}
.p-znak{
  font-family:var(--serif); font-size:1.5rem; color:var(--nebe-tmave);
  text-decoration:none; font-weight:400; letter-spacing:.01em;
}
.p-menu{display:flex; flex-wrap:wrap; gap:6px 16px; font-size:14.5px}
.p-menu a{color:var(--nebe); text-decoration:none; padding:3px 0; border-bottom:2px solid transparent}
.p-menu a:hover{border-bottom-color:rgba(27,74,140,.35)}
.p-menu a.p-tady{border-bottom-color:var(--nebe); font-weight:600}

/* --- text --- */
.p-text{padding:44px 20px 64px}
.p-text h1{
  font-family:var(--serif); font-weight:400; color:var(--nebe);
  font-size:clamp(1.9rem,4.4vw,2.6rem); line-height:1.18; margin:0 0 6px;
}
.p-datum{color:var(--text-tichy); font-size:14.5px; margin:0 0 34px}
.p-text h2{
  font-family:var(--serif); font-weight:400; color:var(--nebe);
  font-size:1.45rem; line-height:1.3; margin:44px 0 12px;
  padding-top:18px; border-top:1px solid var(--linka);
}
.p-text h3{font-size:1.08rem; font-weight:700; color:var(--nebe-tmave); margin:26px 0 8px}
.p-text p{margin:0 0 14px}
.p-text ul,.p-text ol{margin:0 0 16px; padding-left:24px}
.p-text li{margin-bottom:7px}
.p-text a{color:var(--nebe); text-decoration:underline; text-underline-offset:2px}
.p-text strong{color:var(--nebe-tmave)}
.p-tichy{color:var(--text-tichy)}

/* --- zvýrazněný rámeček (důležité upozornění) --- */
.p-ramecek{
  background:var(--voda-bleda); border-left:4px solid var(--voda);
  border-radius:0 12px 12px 0; padding:16px 20px; margin:0 0 22px;
}
.p-ramecek p:last-child{margin-bottom:0}
.p-ramecek--zluty{background:#FDF5E0; border-left-color:var(--slunce-tmave)}
.p-ramecek--zeleny{background:#EFF7E7; border-left-color:var(--louka)}

/* --- tabulka --- */
.p-tab{width:100%; border-collapse:collapse; margin:0 0 22px; font-size:16px}
.p-tab th,.p-tab td{text-align:left; padding:9px 12px; border-bottom:1px solid var(--linka); vertical-align:top}
.p-tab th{color:var(--nebe); font-weight:700; white-space:nowrap}
.p-tab-obal{overflow-x:auto; margin:0 0 22px}
.p-tab-obal .p-tab{margin:0}

/* --- formulář pro odstoupení (tisknutelný) --- */
.p-formular{
  background:#fff; border:1px solid var(--linka); border-radius:14px;
  padding:24px 26px; margin:0 0 24px;
}
.p-formular .p-radek{border-bottom:1px dotted #9aa7b4; min-height:30px; margin:0 0 16px}

/* --- patička --- */
.p-pata{background:var(--nebe-tmave); color:#D7E3F2; padding:40px 0 26px; font-size:15px; margin-top:40px}
.p-pata h4{font-family:var(--serif); font-weight:400; color:#fff; font-size:1.1rem; margin:0 0 10px}
.p-pata p{margin:0 0 12px}
.p-pata a{color:#9FD9F2; text-decoration:none}
.p-pata a:hover{text-decoration:underline}
.p-pata .p-tichy{color:#9FB3CC}
.p-pata-mrizka{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:28px}
.p-pata-spodek{
  display:flex; flex-wrap:wrap; gap:10px 26px; justify-content:space-between;
  margin-top:26px; padding-top:18px; border-top:1px solid rgba(255,255,255,.16);
  font-size:13.5px; color:#9FB3CC;
}

@media(max-width:520px){
  body{font-size:16.5px}
  .p-tab th{white-space:normal}
  .p-tab th,.p-tab td{padding:8px 8px}
  .p-formular{padding:18px 16px}
  .p-text{padding:30px 20px 46px}
  .p-menu{font-size:14px; gap:4px 12px}
}
@media print{
  .p-lista,.p-pata{display:none}
  body{background:#fff; font-size:12pt}
  .p-text{padding:0}
}
