/* Quiet game-like feedback, anchored to real story rooms and real visitor actions. */
.universe-progress{padding:24px 26px;margin:30px 0;border:1px solid #6d8960;background:#142111;box-shadow:6px 6px 0 #090f07}
.universe-progress>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.universe-progress strong{font:600 20px/1.5 Arial,sans-serif;color:#edf5e8}.universe-progress [data-exploration-count]{font:13px/1.5 Plex,monospace;color:#c9e9b8}
.room-meter{display:flex;gap:5px;padding:7px;border:1px solid #718a65;margin:16px 0 12px}.room-segment{height:12px;flex:1;background:#2d4224;transition:background .2s,box-shadow .2s}.room-segment.visited{background:#ceff24;box-shadow:0 0 8px #ceff2444}
.universe-progress p{font:13px/1.7 Arial,sans-serif;color:#bdcdb4;max-width:75ch;margin:0}
#out-world .world-door.is-explored .door-number:after{content:' ✓';color:#ceff24}
.section-announcement{display:grid;grid-template-columns:72px minmax(0,1fr) 32px;gap:20px;align-items:center;padding:16px 18px;margin:0 0 24px;border-left:3px solid #ceff24;background:#151d12;color:#edf5e8}
.section-announcement>img{width:72px;height:90px;object-fit:cover}.section-announcement strong{font:600 18px/1.4 Arial,sans-serif}.section-announcement p{font:13px/1.6 Arial,sans-serif;margin:5px 0}.announcement-link{border:0;border-bottom:1px solid #809a70;background:none;color:#ceff24;font:13px/1.5 Arial,sans-serif;padding:5px 0;text-align:left}.announcement-dismiss{border:0;background:none;color:#c5d5bb;font:28px/1 Arial,sans-serif;align-self:start;padding:4px;min-height:32px}
.screening-artworks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.screening-artwork{padding:0;background:none;border:0;color:#d9e5d1;text-align:left;overflow:hidden}.screening-artwork img{width:100%;height:auto}.screening-artwork>span{display:flex;justify-content:space-between;gap:10px;font:12px/1.6 Arial,sans-serif;padding:12px 0}
.barcelona-dialog{width:min(850px,calc(100vw - 40px));max-height:calc(100svh - 40px);background:#10170d;border-color:#65795c;overflow:auto;padding:0}.announcement-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid #3d4d35}.announcement-top h2{font:500 23px/1.4 Arial,sans-serif;margin:0}.announcement-top button{font-size:28px;background:none;border:0;color:#ceff24;width:40px;height:40px}.announcement-body{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding:24px}.announcement-body>img{width:100%;max-height:64svh;object-fit:contain}.announcement-body p{font:16px/1.7 Arial,sans-serif}.announcement-body .announcement-caption{font-size:12px;color:#bacbb1}
.support-reveals{margin-top:30px;padding:28px;border:1px solid #5f7854;background:#111b0e}.support-reveals h3{font-size:24px;margin:0 0 14px}.support-reveals>p{max-width:76ch;color:#c8d9bd;line-height:1.8}.support-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.support-paths details{border-top:2px solid #7f9c6f}.support-paths summary{display:flex;align-items:center;gap:12px;list-style:none;font:500 16px/1.5 Arial,sans-serif;padding:20px 0;cursor:pointer}.support-paths summary>span:first-child{color:#ceff24;font-size:22px}.reveal-plus{margin-left:auto;color:#ceff24}.support-paths details[open] .reveal-plus{transform:rotate(45deg)}.support-paths details p{font:14px/1.8 Arial,sans-serif;color:#c8d9bd;margin:0;padding-bottom:18px}
@media(max-width:700px){.universe-progress{padding:20px;margin:24px 0}.universe-progress strong{font-size:18px}.section-announcement{grid-template-columns:52px minmax(0,1fr) 26px;gap:12px;padding:14px 12px}.section-announcement>img{width:52px;height:65px}.section-announcement strong{font-size:16px}.section-announcement p{font-size:12px}.screening-artworks{gap:12px}.screening-artwork>span{font-size:11px}.announcement-body{grid-template-columns:1fr;padding:18px;gap:18px}.announcement-body>img{max-height:50svh}.announcement-top{padding:14px 18px}.support-reveals{padding:20px}.support-paths{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){.room-segment,.reveal-plus{transition:none!important}}

.aggregate-status{font:12px/1.7 Arial,sans-serif;color:#b8cbb0;margin:14px 0 0;max-width:76ch}

#top>.hero h1:focus{outline:none}

html[data-motion=off] .room-segment,html[data-motion=off] .reveal-plus{transition:none!important}

/* Comfortable targets for the announcement's small dismiss and close controls. */
.section-announcement{grid-template-columns:72px minmax(0,1fr) 44px}
.announcement-dismiss,.announcement-top button{min-width:44px;min-height:44px;width:44px;height:44px}
.announcement-link{min-height:44px}
@media(max-width:700px){.section-announcement{grid-template-columns:52px minmax(0,1fr) 44px}}

/* Announcement copy stays readable on OUT's dark-green panel. */
#barcelona-announcement{color:#edf4e8}
#barcelona-announcement h2,#barcelona-announcement p,#barcelona-announcement a{color:#edf4e8}
#barcelona-announcement .announcement-caption{color:#bdcdb4}
#barcelona-announcement a:hover,#barcelona-announcement a:focus-visible{color:#ceff24;border-color:#ceff24}
