/* 1. Use the shared kit. 2. Keep the world visible. 3. Adapt controls for thumbs. */
.exp-dialog,.exp-dialog *,.exp-hud,.exp-hud *,.exp-launch{box-sizing:border-box}
.exp-launch{position:fixed;top:86px;right:14px;z-index:7;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:10px 16px;cursor:pointer;background:var(--wum-card-bg);color:var(--wum-card-ink);font:600 13px var(--wum-body);box-shadow:0 6px 30px #0002}
.exp-dialog{position:fixed;inset:0;z-index:22;background:#10172590;display:grid;place-items:center;padding:20px;backdrop-filter:blur(8px)}
.exp-dialog[hidden],.exp-hud[hidden]{display:none}
.exp-sheet{width:min(600px,100%);max-height:85dvh;overflow:auto;border-radius:20px;padding:24px;background:var(--wum-card-bg);color:var(--wum-card-ink);box-shadow:0 30px 100px #0006;position:relative}
.exp-sheet h2{font:800 clamp(26px,5vw,38px)/1.08 var(--wum-display);margin:8px 35px 18px 0}
.exp-sheet p{line-height:1.55}.exp-sheet small{color:var(--wum-card-accent);font:600 11px var(--wum-mono);letter-spacing:.12em;text-transform:uppercase}
.exp-sheet input{width:100%;padding:12px;border:1px solid var(--wum-card-rule);border-radius:8px;background:transparent;color:inherit;font:inherit}
.exp-close{position:absolute;right:16px;top:16px;border:0;border-radius:50%;width:36px;height:36px;background:#0001;font-size:20px;color:inherit}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.exp-card{border:1px solid var(--wum-card-rule);border-radius:12px;background:transparent;text-align:left;padding:16px;color:inherit;font:inherit;cursor:pointer}.exp-card strong{display:block;margin-bottom:5px;font:700 17px var(--wum-display)}.exp-card span{font-size:13px;line-height:1.45;display:block}.exp-card:hover,.exp-card[aria-pressed=true]{background:#d8772920;border-color:var(--wum-card-accent)}
.exp-row{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.exp-row button,.exp-action{padding:10px 14px;border-radius:999px;border:1px solid var(--wum-card-rule);background:transparent;color:inherit;font:600 13px var(--wum-body);cursor:pointer}.exp-row button[aria-pressed=true],.exp-action{background:var(--wum-card-accent);color:white}
.exp-service{display:grid;grid-template-columns:90px 1fr 50px;gap:12px;align-items:center;margin:12px 0;font-size:13px}.exp-service progress{width:100%;accent-color:var(--wum-card-accent)}
.exp-game-status{padding:12px 16px;margin-top:16px;border-radius:10px;background:var(--wum-card-accent);color:white;font:700 22px var(--wum-mono);font-variant-numeric:tabular-nums}
.exp-card:focus-visible,.exp-row button:focus-visible,.exp-action:focus-visible,.exp-launch:focus-visible,.exp-close:focus-visible{outline:3px solid var(--wum-card-accent);outline-offset:3px}
.exp-flow{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0;font:600 13px var(--wum-body)}.exp-flow span{border:1px solid var(--wum-card-rule);padding:8px;border-radius:8px}
.exp-hud{position:fixed;right:14px;top:134px;width:min(360px,calc(100% - 28px));z-index:8;background:var(--wum-card-bg);color:var(--wum-card-ink);border:1px solid var(--wum-card-rule);border-radius:14px;padding:14px 18px;box-shadow:0 12px 40px #0003}
.exp-hud small{color:var(--wum-card-accent);font:600 11px var(--wum-mono)}.exp-hud b{display:block;font:700 18px var(--wum-display);margin:5px 0}.exp-hud span{font-size:13px}.exp-hud .exp-close{position:absolute;right:10px;top:10px;width:30px;height:30px;font-size:17px}.exp-hud .exp-row{margin:12px 0 2px}.exp-hud progress{width:100%;height:4px;accent-color:var(--wum-card-accent)}
.exp-arrival{position:fixed;inset:0;z-index:24;background:#060b14;display:grid;place-items:center;overflow:hidden;pointer-events:none}.exp-arrival img{position:absolute;width:100%;height:100%;object-fit:cover;animation:exp-dive 2.4s ease-in forwards}.exp-arrival p{position:relative;color:white;font:600 24px var(--wum-display);text-shadow:0 2px 20px black}.exp-arrival{animation:exp-arrive 2.4s ease forwards}
@keyframes exp-dive{to{transform:scale(2.6);opacity:0}}@keyframes exp-arrive{0%,55%{opacity:1}100%{opacity:0}}
@media(max-width:600px){.exp-launch{top:116px;right:8px;padding:8px 12px}.exp-hud{top:160px;right:8px;width:calc(100% - 16px);padding:12px 14px}.exp-sheet{padding:20px}.exp-grid{grid-template-columns:1fr}.exp-dialog{padding:12px}}
@media(prefers-reduced-motion:reduce){.exp-arrival img{animation:none}.exp-arrival{animation-duration:.01s}}

/* icons and done tags on the cards (owner's review, 10 October 2026) */
.exp-ico{display:inline-grid;place-items:center;width:20px;height:20px;color:var(--wum-card-accent)}.exp-ico svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.exp-ico .f{fill:currentColor;stroke:none}
.exp-card{position:relative}.exp-card .exp-ico{width:26px;height:26px;margin-bottom:8px}.exp-card em{position:absolute;top:12px;right:12px;font:600 10px var(--wum-mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:var(--wum-card-accent);border:1px solid var(--wum-card-accent);border-radius:999px;padding:3px 8px}
.exp-launch .exp-ico{width:18px;height:18px}
.exp-hud span{display:block}.exp-hud b{margin-right:26px}
.exp-hud [data-distance]{margin-top:6px;font:600 12px var(--wum-mono);color:var(--wum-card-accent)}
@media(max-width:600px){.exp-hud b{font-size:16px}.exp-hud>span:not([data-distance]){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}

/* the first-morning offer is a small note, not a panel over the city (05-19 PA-85) */
.exp-hud.offer{width:min(290px,calc(100% - 28px));padding:11px 14px}
.exp-hud.offer b{font-size:15px;margin:3px 0}.exp-hud.offer span{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.exp-hud.offer .exp-row{margin:8px 0 0}.exp-hud.offer .exp-row button{padding:6px 11px;font-size:12px}
@media (max-width:640px){.exp-hud.offer{padding:9px 12px}.exp-hud.offer span{display:none}.exp-hud.offer b{font-size:14px}}
