/* V9 component styles, scoped and responsive */
.df9-world,.df9-pass,.df9-world-links{max-width:1100px;margin:2rem auto;padding:clamp(1rem,3vw,2rem);border:1px solid rgba(145,132,107,.3);border-radius:12px;background:var(--df9-panel,#f5f0e7);color:var(--df9-ink,#262d2b)}
.df9-hero{padding:clamp(2rem,6vw,5rem);border-radius:12px;margin:1.5rem auto;max-width:1150px;min-height:240px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 18px 50px rgba(0,0,0,.22)}
.df9-hero h2{font-size:clamp(2rem,5vw,4rem);line-height:1.08;margin:.3em 0;color:inherit}.df9-kicker{letter-spacing:.18em;font-size:.8rem;font-weight:700}
.df9-police{color:#eee9d8;background:linear-gradient(120deg,rgba(18,29,28,.97),rgba(35,53,46,.84)),linear-gradient(30deg,#283b33,#746a52);border:2px solid #97815c}
.df9-salsa{color:#f5dfcc;background:radial-gradient(circle at 75% 25%,#7b3834 0%,#411d2a 45%,#170d13 100%);border:2px solid #9c6a4b}
.df9-rooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1rem}.df9-room{border:1px solid #988870;border-radius:8px;padding:1rem;background:rgba(255,255,255,.08)}.df9-room summary{cursor:pointer;font-weight:700}.df9-room summary small{display:block;font-weight:400}.df9-room img{max-width:100%;height:auto;border-radius:6px}.df9-room[hidden]{display:none!important}
.df9-controls{margin:1rem 0}.df9-controls select,.df9-pass select{padding:.55rem;max-width:100%}.df9-pass-list{display:grid;gap:.5rem}.df9-pass-list label{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid #b3a896;padding:.6rem 0}.df9-pass button{padding:.7rem 1rem;margin-top:1rem}.df9-world-links{display:flex;flex-direction:column;gap:.8rem}.df9-world-links a{color:inherit;text-decoration:underline;text-underline-offset:4px}.df9-world :focus-visible,.df9-pass :focus-visible{outline:3px solid #d8a748;outline-offset:3px}
@media(max-width:600px){.df9-pass-list label{align-items:flex-start;flex-direction:column}.df9-hero{min-height:180px}}@media(prefers-reduced-motion:reduce){.df9-world *,.df9-pass *{animation:none!important;transition:none!important}}
