/* =========================================================
   Lex Legion — formularze (pola dodatkowe, captcha, komunikaty)
   oraz elementy podstron odszkodowań. Ładowany PO podstrona.css.
   ========================================================= */

/* ---------- pola dodatkowe ---------- */
.field select{appearance:none;-webkit-appearance:none;border-radius:1rem;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239a9aa2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 1rem center;padding:.75rem 2.75rem .75rem 1rem;color:var(--ink-foreground);font-family:inherit;font-size:1rem;outline:none;transition:border-color .2s,background-color .2s}
.field select:focus{border-color:var(--primary);background-color:rgba(255,255,255,.07)}
.field select option,.field select optgroup{color:#0a0a0b;background:#fff}
.field.invalid select{border-color:var(--primary)}
.lf-label,.lf-terms legend{font-size:.875rem;font-weight:500;color:rgba(255,255,255,.9)}
.req{color:var(--primary);font-weight:600}
.lf-required{font-size:.8125rem;color:var(--ink-muted);margin-top:-.25rem}
.cta-lead{margin-top:1.25rem;max-width:32rem;line-height:1.65;color:var(--ink-muted)}

.lf-choices{display:flex;flex-wrap:wrap;gap:.5rem}
.lf-choices.lf-stack{flex-direction:column}
.lf-choice{position:relative;display:inline-flex;cursor:pointer}
.lf-choice input{position:absolute;opacity:0;width:1px;height:1px}
.lf-choice span{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);padding:.55rem 1rem;font-size:.9375rem;color:rgba(255,255,255,.85);transition:border-color .2s,background .2s,color .2s}
.lf-stack .lf-choice span{border-radius:1rem;width:100%}
.lf-choice span::before{content:'';width:.875rem;height:.875rem;flex-shrink:0;border-radius:999px;border:2px solid rgba(255,255,255,.35);transition:all .2s}
.lf-choice:hover span{border-color:rgba(255,255,255,.3)}
.lf-choice input:checked+span{border-color:var(--primary);background:rgba(237,28,36,.12);color:#fff}
.lf-choice input:checked+span::before{border-color:var(--primary);background:var(--primary);box-shadow:inset 0 0 0 2px #1a1a1c}
.lf-choice input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}
.field.invalid .lf-choice span{border-color:rgba(237,28,36,.6)}

.lf-terms{border:1px solid rgba(255,255,255,.12);border-radius:1rem;padding:1rem;display:flex;flex-direction:column;gap:.625rem;min-width:0}
.lf-terms[hidden]{display:none}
.lf-terms legend{padding:0 .375rem}
.lf-term{display:grid;grid-template-columns:auto minmax(0,1.4fr) minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem}
.lf-term input{min-width:0;border-radius:.75rem;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);padding:.55rem .625rem;color:var(--ink-foreground);font-family:inherit;font-size:.9375rem;outline:none;color-scheme:dark}
.lf-term input:focus{border-color:var(--primary)}
.lf-term-n{display:flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.08);font-size:.75rem;font-weight:700;color:var(--ink-muted)}
.lf-dash{color:var(--ink-muted)}
@media(max-width:520px){.lf-term{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr)}.lf-term .lf-term-n{grid-row:span 2}.lf-term input[type=date]{grid-column:2/4}.lf-term [name$=_od]{grid-column:2}.lf-term [name$=_do]{grid-column:3}.lf-term .lf-dash{display:none}}
.lf-terms .err{display:none;font-size:.875rem;color:var(--primary)}
.lf-terms.invalid{border-color:var(--primary)}
.lf-terms.invalid .err{display:block}
.lf-terms .hint{font-size:.8125rem;color:var(--ink-muted)}

.lf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lf-captcha:empty{display:none}
.lf-alert{border-radius:1rem;border:1px solid rgba(237,28,36,.5);background:rgba(237,28,36,.12);padding:.875rem 1rem;font-size:.9375rem;line-height:1.5;color:#fff}
.lf-alert[hidden]{display:none}
.lf-number{margin-top:1rem!important;font-size:1rem;color:#fff!important}
.lf-number strong{color:var(--primary);letter-spacing:.02em}
.grecaptcha-badge{visibility:hidden}
.lf-recaptcha-note{font-size:.75rem;line-height:1.5;color:var(--ink-muted)}
.lf-recaptcha-note a{text-decoration:underline}

.discretion{margin-top:2rem;border-top:1px solid var(--ink-border);padding-top:1.5rem;max-width:32rem}
.discretion h3{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--ink-foreground);font-family:var(--font-sans)}
.discretion h3 .icon{width:18px;height:18px;color:var(--primary)}
.discretion p{margin-top:.75rem;font-size:.875rem;line-height:1.65;color:var(--ink-muted)}

/* ---------- podstrony odszkodowań ---------- */
.chips{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.5rem}
.chips li{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;border:1px solid var(--border);background:var(--card);padding:.5rem 1rem;font-size:.9375rem;font-weight:500;color:rgba(10,10,11,.85)}
.chips li .icon{width:16px;height:16px;color:var(--primary)}
.chip-cols{margin-top:3rem;display:grid;gap:2.5rem}
@media(min-width:768px){.chip-cols{grid-template-columns:repeat(2,1fr)}}
.chip-cols h3{font-family:var(--font-display);font-size:1.25rem;font-weight:700}
.wip{margin-top:2rem;display:flex;align-items:flex-start;gap:1rem;max-width:40rem;border-radius:1.25rem;border:1px dashed rgba(237,28,36,.45);background:rgba(237,28,36,.04);padding:1.25rem 1.5rem}
.wip .w-icon{display:flex;width:2.75rem;height:2.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:.75rem;background:var(--primary);color:var(--primary-foreground)}
.wip strong{display:block;font-family:var(--font-display);font-size:1.25rem;font-weight:700}
.wip p{margin-top:.25rem;line-height:1.6;color:var(--muted-foreground)}
.text-block{margin-top:1.5rem;max-width:46rem;display:flex;flex-direction:column;gap:1rem;font-size:1.0625rem;line-height:1.7;color:var(--muted-foreground)}
.text-block strong{color:var(--foreground)}
.check-list{margin-top:2rem;display:grid;gap:.75rem;max-width:46rem}
.check-list li{display:flex;align-items:flex-start;gap:.75rem;font-size:1.0625rem;line-height:1.6}
.check-list .icon{flex-shrink:0;margin-top:.25rem;color:var(--primary)}
.law-grid{margin-top:3rem;display:grid;gap:1rem}
@media(min-width:768px){.law-grid{grid-template-columns:repeat(3,1fr)}}
.law{border-radius:1.25rem;border:1px solid var(--border);background:var(--card);padding:1.75rem}
.law .art{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--primary)}
.law p{margin-top:.75rem;font-size:.9375rem;line-height:1.6;color:var(--muted-foreground)}
.phase-list{margin-top:3rem;display:grid;gap:1rem}
.phase{display:grid;gap:1rem;border-radius:1.5rem;border:1px solid var(--border);background:var(--card);padding:1.75rem}
@media(min-width:768px){.phase{grid-template-columns:12rem 1fr;gap:2rem}}
.phase.hl{border-color:rgba(237,28,36,.4);box-shadow:0 20px 50px -30px rgba(237,28,36,.45)}
.phase .ph-when{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--primary)}
.phase .ph-name{margin-top:.5rem;font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.2}
.phase ul{display:grid;gap:.625rem}
.phase li{display:flex;gap:.625rem;font-size:.9375rem;line-height:1.6;color:var(--muted-foreground)}
.phase li::before{content:'';flex-shrink:0;margin-top:.6rem;width:.375rem;height:.375rem;border-radius:999px;background:var(--primary)}
.phase blockquote{border-left:3px solid var(--primary);padding:.25rem 0 .25rem 1rem;font-family:var(--font-display);font-size:1.125rem;font-weight:600;line-height:1.45;color:var(--foreground)}
.benefit-grid .aud h3{font-size:1.125rem;line-height:1.3}
@media(min-width:768px){.benefit-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.benefit-grid{grid-template-columns:repeat(4,1fr)}}
.sec-head{max-width:44rem}
.sec-lead{margin-top:1.5rem;color:var(--muted-foreground);font-size:1.125rem;line-height:1.65;max-width:38rem}
.o-card.wip-card .oc-title::after{content:'w przygotowaniu';display:inline-block;white-space:nowrap;margin-left:.5rem;vertical-align:middle;border-radius:999px;background:var(--secondary);padding:.15rem .5rem;font-family:var(--font-sans);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground)}
.experts .partner-list{margin-top:2.5rem;display:flex;flex-wrap:wrap;gap:.5rem}
.experts .partner-list li{border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);padding:.5rem 1rem;font-size:.9375rem;color:rgba(255,255,255,.88)}

/* zapobiega rozpychaniu formularza na telefonach (długie opcje listy, pola daty) */
.cta-grid>*{min-width:0}
.form,.form .field,.form .two-col>*{min-width:0}
.field select,.field input,.field textarea{width:100%;max-width:100%}
.lf-choice span{max-width:100%}

/* priorytet: Niski / Średni / Wysoki z podpowiedzią po najechaniu */
.lf-prio .lf-choice{position:relative}
.lf-prio .lf-choice[data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + .6rem);transform:translate(-50%,4px);width:max-content;max-width:16rem;border-radius:.75rem;background:#fff;color:#0a0a0b;padding:.55rem .8rem;font-size:.8125rem;line-height:1.4;font-weight:500;text-align:center;box-shadow:0 12px 30px -10px rgba(0,0,0,.5);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,transform .15s;z-index:5}
.lf-prio .lf-choice[data-tip]:hover::after,.lf-prio .lf-choice[data-tip]:focus-within::after{opacity:1;visibility:visible;transform:translate(-50%,0)}
.lf-prio .lf-choice:first-child[data-tip]::after{left:0;transform:translate(0,4px)}
.lf-prio .lf-choice:first-child[data-tip]:hover::after,.lf-prio .lf-choice:first-child[data-tip]:focus-within::after{transform:translate(0,0)}
@media(hover:none){.lf-prio .lf-choice[data-tip]::after{display:none}}
.lf-prio .lf-choice:last-child[data-tip]::after{left:auto;right:0;transform:translate(0,4px)}
.lf-prio .lf-choice:last-child[data-tip]:hover::after,.lf-prio .lf-choice:last-child[data-tip]:focus-within::after{transform:translate(0,0)}
.lf-prio .lf-choice[data-tip]:not(:hover):not(:focus-within)::after{display:none}
.platform-note{margin-top:2rem;max-width:46rem;font-size:.8125rem;line-height:1.6;color:var(--muted-foreground)}

/* treść przygotowana przez AI — czerwona gwiazdka przed tytułem (do weryfikacji) */
.ai-star{color:var(--primary);font-weight:800;margin-right:.15em;cursor:help}
.cmp-list{margin-top:1rem;display:grid;gap:.5rem}
.cmp-list li{display:flex;gap:.5rem;font-size:.9375rem;line-height:1.5;color:var(--muted-foreground)}
.cmp-list .icon{flex-shrink:0;width:16px;height:16px;margin-top:.2rem;color:var(--primary)}
.section .timeline:not(#timeline) .step-badge{color:var(--primary)}

/* ---------- telefon ---------- */
@media(max-width:559px){
  .lf-prio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .lf-prio .lf-choice{display:flex}
  .lf-prio .lf-choice span{flex:1;justify-content:center;text-align:center}
}
