/* Future W35: moduły osadzone w istniejących artykułach; bez zmian menu i układu strony. */
.article .future-w35 {
  box-sizing: border-box;
  margin: 2.2rem 0;
  padding: 1.5rem;
  min-width: 0;
  border: 1px solid #dbd4e8;
  border-radius: 1.35rem;
  background: linear-gradient(145deg, #fbf9fd, #f1f8f6);
  color: #1e304a;
  scroll-margin-top: 110px;
}
.future-w35 *, .future-w35 *::before, .future-w35 *::after { box-sizing: border-box; }
.article .future-w35 h3 { color: #203351; margin: .15rem 0 .65rem; font-size: 1.25rem; line-height: 1.3; }
.article .future-w35 h4 { color: #263753; margin: .2rem 0 .5rem; font-size: 1rem; line-height: 1.4; }
.article .future-w35 p { margin: .55rem 0 .9rem; font-size: 1rem; line-height: 1.6; }
.article .future-w35 p:last-child { margin-bottom: 0; }
.future-w35 .w35-kicker { display: block; margin-bottom: .45rem; color: #5e4a76; font-size: .73rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.future-w35 [hidden] { display: none !important; }
.future-w35 label, .future-w35 legend { display: block; margin: .8rem 0 .35rem; color: #263753; font-size: .95rem; font-weight: 700; line-height: 1.4; }
.future-w35 fieldset { border: 0; min-width: 0; margin: .8rem 0; padding: 0; }
.future-w35 fieldset legend { padding: 0; }
.future-w35 input[type=text], .future-w35 textarea, .future-w35 select {
  display: block; width: 100%; max-width: 100%; min-width: 0; min-height: 44px;
  margin: 0; padding: .65rem .75rem; border: 1px solid #bcb6cb; border-radius: .6rem;
  background: #fff; color: #1f3048; font: inherit; font-size: 16px; line-height: 1.4;
}
.future-w35 textarea { min-height: 5rem; resize: vertical; }
.future-w35 .w35-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.future-w35 .w35-grid > * { min-width: 0; }
.future-w35 .w35-panel { min-width: 0; padding: .9rem; border: 1px solid #e4deec; border-radius: .8rem; background: #fff; }
.future-w35 .w35-panel legend { color: #493165; }
.future-w35 .w35-pick { display: flex; align-items: flex-start; gap: .65rem; min-height: 44px; padding: .65rem .75rem; margin: .5rem 0; border: 1px solid #e4deec; border-radius: .7rem; background: #fff; color: #273952; font-weight: 500; line-height: 1.45; }
.future-w35 .w35-pick input { flex: 0 0 auto; width: 1.15rem; height: 1.15rem; margin: .12rem 0 0; accent-color: #6f4b91; }
.future-w35 .w35-options { display: flex; flex-wrap: wrap; gap: .55rem; margin: .9rem 0; }
.future-w35 button { min-height: 44px; padding: .65rem .9rem; border: 0; border-radius: .65rem; background: #493165; color: #fff; font: inherit; font-size: .95rem; font-weight: 700; line-height: 1.3; cursor: pointer; }
.future-w35 button:hover { background: #342147; }
.future-w35 .w35-options button { flex: 1 1 10rem; border: 1px solid #bdb1cb; background: #fff; color: #493165; }
.future-w35 .w35-options button:hover, .future-w35 .w35-options button[aria-pressed=true] { background: #e9deef; border-color: #795a97; color: #322044; }
.future-w35 [data-w35-action] { margin-top: .8rem; }
.future-w35 :focus-visible { outline: 3px solid #9960bd; outline-offset: 3px; }
.future-w35 .w35-result { margin: 1rem 0 0; padding: .9rem 1rem; border-left: 3px solid #7ba99e; border-radius: .5rem; background: #fff; color: #22364e; overflow-wrap: anywhere; }
.future-w35 .w35-result p { white-space: pre-wrap; }
.future-w35 .w35-note { color: #526277; font-size: .85rem !important; line-height: 1.5 !important; margin: 1rem 0 0 !important; }
.future-w35 .w35-sample { padding: .9rem 1rem; border-radius: .75rem; background: #fff; border: 1px solid #e4deec; }
.future-w35 details { margin: .6rem 0; padding: .1rem .85rem .65rem; border: 1px solid #e4deec; border-radius: .75rem; background: #fff; }
.future-w35 summary { min-height: 44px; padding: .65rem 0; color: #493165; font-weight: 700; cursor: pointer; }
@media (max-width: 520px) {
  .article .future-w35 { margin: 1.6rem 0; padding: 1.1rem; border-radius: 1.1rem; }
  .article .future-w35 h3 { font-size: 1.15rem; }
  .future-w35 .w35-grid { grid-template-columns: 1fr; }
  .future-w35 .w35-options button { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) { .future-w35 * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
