/* P159 — Weather Twins intelligence-family page.
 * Family paint is inherited; this file owns composition only. */
.sw-twins-shell{display:grid;gap:var(--sw-family-section-gap,16px)}
.sw-twins-kicker{display:block;color:var(--sw-accent-data,#28ace2);font-size:var(--sw-type-label-size,.72rem);font-weight:650;letter-spacing:.055em;text-transform:uppercase}
.sw-twins-intro,.sw-twins-search,.sw-twins-origin,.sw-twins-results,.sw-twins-method,.sw-twins-empty{padding:.92rem .98rem}
.sw-twins-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(20rem,.7fr);gap:1rem;align-items:center}
.sw-twins-intro__copy h2,.sw-twins-search h2,.sw-twins-section-head h2,.sw-twins-method h2,.sw-twins-empty h2{margin:.12rem 0;color:var(--sw-dark-heading,#f4fbff)}
.sw-twins-intro__copy p,.sw-twins-search p,.sw-twins-section-head p,.sw-twins-method p,.sw-twins-empty p{margin:.28rem 0 0;color:var(--sw-dark-muted,#91b1c5);line-height:1.48}
.sw-twins-intro__rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}
.sw-twins-intro__rules>span{display:grid;gap:.05rem;min-width:0;padding:.58rem .62rem;border:1px solid rgba(255,255,255,.06);border-radius:.62rem;background:rgba(255,255,255,.022)}
.sw-twins-intro__rules b{color:#dff8ff;font-size:1.05rem;font-weight:650}.sw-twins-intro__rules small{color:var(--sw-dark-quiet,#789aae);font-size:.66rem;text-transform:uppercase}.sw-twins-intro__rules strong{overflow:hidden;color:var(--sw-dark-muted,#a6c1ce);font-size:.72rem;font-weight:550;text-overflow:ellipsis;white-space:nowrap}
.sw-twins-search{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1.25fr);gap:1rem;align-items:end}.sw-twins-search form{display:grid;gap:.28rem}.sw-twins-search label{color:var(--sw-dark-muted,#91b1c5);font-size:.72rem}.sw-twins-search__row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.4rem}
.sw-twins-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.72rem}.sw-twins-section-head>div{min-width:0}.sw-twins-section-head__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.sw-twins-count{flex:0 0 auto;padding:.28rem .46rem;border:1px solid rgba(255,255,255,.07);border-radius:999px;color:var(--sw-dark-muted,#91b1c5);font-size:.7rem}
.sw-twins-origin__decision{margin-top:.7rem}
.sw-twins-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;align-items:stretch}
.sw-twins-pair{position:relative;display:grid;gap:.65rem;min-width:0;height:100%;padding:.78rem .82rem;overflow:hidden}
.sw-twins-pair::after{position:absolute;right:.8rem;bottom:0;left:.8rem;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--sw-accent-data,#28ace2),var(--sw-accent-positive,#2baa72),transparent);opacity:.3}
.sw-twins-pair__rank{position:absolute;top:.58rem;right:.65rem;color:color-mix(in srgb,var(--sw-accent-data,#28ace2) 70%,white 30%);font-size:.74rem;font-weight:700}
.sw-twins-pair__grid{display:grid;grid-template-columns:minmax(0,1fr) 5.5rem minmax(0,1fr);gap:.55rem;align-items:stretch}
.sw-twins-resort{display:flex;min-width:0;flex-direction:column;justify-content:space-between;gap:.55rem;padding:.58rem .62rem;border:1px solid rgba(255,255,255,.055);border-radius:.62rem;background:rgba(255,255,255,.022)}
.sw-twins-resort__identity{display:grid;gap:.08rem;min-width:0}.sw-twins-resort__kicker{overflow:hidden;color:var(--sw-dark-quiet,#789aae);font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.sw-twins-resort h3{margin:0;line-height:1.18}.sw-twins-resort h3 a{color:var(--sw-dark-heading,#f4fbff);text-decoration:none}.sw-twins-resort h3 a:hover,.sw-twins-resort h3 a:focus-visible{color:#bcecff}.sw-twins-resort p{margin:.18rem 0 0;color:var(--sw-dark-muted,#91b1c5);font-size:.7rem;line-height:1.35}.sw-twins-resort__actions{display:flex;flex-wrap:wrap;gap:.35rem}.sw-twins-resort__actions a{color:#8edfff;font-size:.68rem;text-decoration:none}.sw-twins-resort__actions a:hover,.sw-twins-resort__actions a:focus-visible{color:#d7f5ff}
.sw-twins-pair__bridge{position:relative;display:grid;align-content:center;justify-items:center;gap:.02rem;text-align:center}.sw-twins-pair__bridge::before,.sw-twins-pair__bridge::after{width:100%;height:1px;content:"";background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--sw-accent-data,#28ace2) 48%,transparent),transparent)}.sw-twins-pair__bridge span{margin-top:.22rem;color:var(--sw-accent-data,#28ace2);font-size:.62rem;text-transform:uppercase;letter-spacing:.05em}.sw-twins-pair__bridge strong{color:#effbff;font-size:1.45rem;line-height:1;font-weight:700}.sw-twins-pair__bridge small{margin-bottom:.22rem;color:var(--sw-dark-quiet,#789aae);font-size:.62rem}
.sw-twins-pair__evidence{display:grid;gap:.12rem;padding:.48rem .56rem;border-top:1px solid rgba(255,255,255,.05)}.sw-twins-pair__evidence p{margin:0;color:var(--sw-dark-muted,#a6c1ce);font-size:.72rem;line-height:1.4}.sw-twins-pair__evidence span{color:var(--sw-dark-quiet,#789aae);font-size:.65rem}.sw-twins-pair__footer{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:auto}
.sw-twins-empty{display:grid;gap:.22rem}.sw-twins-empty strong{color:var(--sw-dark-heading,#f4fbff)}.sw-twins-empty span{color:var(--sw-dark-muted,#91b1c5)}
.sw-twins-method{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:1rem;align-items:start}.sw-twins-method__rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.sw-twins-method__rules>.sw-family-card{display:grid;gap:.18rem;padding:.64rem}.sw-twins-method__rules strong{color:var(--sw-dark-heading,#f4fbff);font-weight:650}.sw-twins-method__rules span{color:var(--sw-dark-muted,#91b1c5);font-size:.72rem;line-height:1.42}
@media(max-width:1050px){.sw-twins-grid{grid-template-columns:1fr}.sw-twins-intro{grid-template-columns:1fr}.sw-twins-search{grid-template-columns:1fr}.sw-twins-method{grid-template-columns:1fr}}
@media(max-width:720px){.sw-twins-intro__rules,.sw-twins-method__rules{grid-template-columns:1fr}.sw-twins-section-head{align-items:flex-start;flex-direction:column}.sw-twins-section-head__actions{justify-content:flex-start}.sw-twins-pair__grid{grid-template-columns:1fr}.sw-twins-pair__bridge{grid-template-columns:1fr auto 1fr;align-items:center;gap:.3rem}.sw-twins-pair__bridge::before,.sw-twins-pair__bridge::after{width:100%}.sw-twins-pair__bridge span{grid-column:2;margin:0}.sw-twins-pair__bridge strong{grid-column:2}.sw-twins-pair__bridge small{grid-column:2;margin:0}.sw-twins-search__row{grid-template-columns:1fr}.sw-twins-search__row .sw-action{width:100%}}
