#portal-destinations{width:min(940px,94vw);padding:16px;border:2px solid #b69759;border-radius:16px;background:#183534;color:#fff0c8;box-sizing:border-box}#portal-destinations::backdrop{background:#042220aa}#portal-destinations>header{position:static;inset:auto;display:flex;align-items:center;justify-content:space-between;height:auto;padding:0;margin:0 0 12px;transform:none}#portal-destinations h2{font:700 24px Georgia;margin:0}#portal-destinations button{color:#fff0c8;background:#234b45;border:1px solid #bea56d;border-radius:12px;cursor:pointer;min-height:48px;min-width:48px}#portal-destinations .portal-destination-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#portal-destinations [data-portal-destination]{display:flex;flex-direction:column;align-items:center;padding:8px;gap:8px;font:600 18px system-ui}#portal-destinations [data-portal-destination]>img{width:100%;height:clamp(100px,20vh,190px);object-fit:cover;border-radius:8px}#portal-destinations .portal-destination-symbols{display:flex;gap:6px}#portal-destinations .portal-destination-symbols img{width:38px;height:38px;object-fit:contain}#portal-destinations button:focus-visible{outline:4px solid #ffe89f;outline-offset:2px}.pv-enter img{width:54px;height:40px;object-fit:cover;border-radius:6px;vertical-align:middle;margin-right:8px}.pv-enter{display:inline-flex;align-items:center}
@media(max-width:600px){#portal-destinations .portal-destination-cards{grid-template-columns:1fr;gap:8px}#portal-destinations [data-portal-destination]{display:grid;grid-template-columns:86px 1fr;grid-template-rows:auto auto;text-align:left;font-size:17px;gap:5px 12px}#portal-destinations [data-portal-destination]>img{grid-row:1/3;height:92px}#portal-destinations .portal-destination-symbols img{width:28px;height:28px}#portal-destinations h2{font-size:22px}}
#dragonfly-flight-entry{position:fixed;right:18px;bottom:calc(var(--player-dock-height,100px) + 18px);z-index:12;display:flex;align-items:center;gap:8px;padding:4px 15px 4px 4px;min-height:54px;border:1px solid #c1a064;border-radius:28px;background:#123c39ed;color:#fff0c8;font:600 16px system-ui;box-shadow:0 4px 20px #001c2566;cursor:pointer}#dragonfly-flight-entry[hidden]{display:none}#dragonfly-flight-entry img{width:72px;height:52px;object-fit:contain}
#dragonfly-flight{width:min(1240px,98vw);height:calc(100dvh - var(--player-dock-height,100px) - 20px);padding:0;border:2px solid #a88c53;border-radius:14px;background:#123c39;color:#fff0c8;box-sizing:border-box;overflow:hidden}#dragonfly-flight[open]{display:flex;flex-direction:column}#dragonfly-flight::backdrop{background:#071f24bb}#dragonfly-flight>header{position:static;inset:auto;transform:none;display:flex;gap:12px;align-items:center;padding:8px 12px;height:auto;flex:none;border-bottom:1px solid #938655}#dragonfly-flight h2{position:static;font:600 20px Georgia;margin:0;flex:1}#dragonfly-flight button{min-width:44px;min-height:44px;border:1px solid #b49b65;border-radius:9px;background:#1c5047;color:#ffedbf;font:600 16px system-ui;cursor:pointer}#dragonfly-flight button:focus-visible{outline:3px solid #ffedaa;outline-offset:2px}.df-progress{font:700 25px system-ui;letter-spacing:4px;color:#fbe998}.df-board{position:relative;flex:1;min-height:0;overflow:hidden}.df-board canvas,.df-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.df-board canvas{touch-action:none}.df-landscape{filter:brightness(.85)}.df-start,.df-result,.df-paused{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;background:#0b30294f;text-align:center;padding:10px;box-sizing:border-box}.df-start>img{width:min(350px,65vw);height:min(230px,35vh);object-fit:contain}.df-start p{margin:0;padding:8px 12px;border-radius:8px;background:#072b27db;font:600 17px system-ui}.df-result{background:#0b3029d9}.df-result strong{font-size:48px;color:#e8e592}.df-result h3{font:700 30px Georgia;margin:0}.df-paused{background:#072821b0}.df-board [hidden]{display:none}#dragonfly-flight footer{position:static;inset:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 12px;flex:none;min-height:44px}.df-arrows{display:flex;gap:6px}.df-arrows button{font-size:24px!important}#dragonfly-flight .df-status{position:static;margin:0;text-align:center;font:14px system-ui;min-height:18px;flex:none}#dragonfly-flight [aria-pressed=true]{background:#557645}
@media(max-width:600px){#dragonfly-flight-entry{font-size:14px;right:10px;bottom:calc(var(--player-dock-height,132px) + 10px)}#dragonfly-flight h2{font-size:17px}.df-progress{font-size:18px;letter-spacing:1px}#dragonfly-flight>header{padding:5px;gap:6px}#dragonfly-flight footer{padding:5px;gap:6px;flex-wrap:wrap;justify-content:center}#dragonfly-flight [data-df-assist]{font-size:13px}.df-arrows{gap:8px}.df-start>img{height:min(160px,28vh)}.df-start p{font-size:14px}.df-result h3{font-size:24px}}
@media(max-height:520px){#dragonfly-flight>header{padding:3px 8px}#dragonfly-flight footer{padding:3px 8px}.df-start>img{height:70px}.df-start{gap:3px;flex-direction:row;flex-wrap:wrap}.df-start p{font-size:13px}#dragonfly-flight .df-status{display:none}}
/* Portal controls predate the shared dock; keep their real buttons above it. */
#portal-checkpoint .pv-nav{bottom:calc(var(--player-dock-height,100px) + 12px);flex-wrap:wrap;gap:8px}#portal-checkpoint .pv-skip{bottom:calc(var(--player-dock-height,100px) + 12px);right:18px}#portal-checkpoint .pv-caption{bottom:calc(var(--player-dock-height,100px) + 82px)}#portal-checkpoint .pv-status{bottom:calc(var(--player-dock-height,100px) + 86px);font-size:17px}#portal-checkpoint .pv-activate{min-height:44px}#portal-checkpoint .pv-key-dialog{width:min(480px,calc((100dvh - var(--player-dock-height,100px) - 130px)*.8),94vw)}
@media(max-width:600px){#portal-checkpoint .pv-nav{left:8px;right:8px}#portal-checkpoint .pv-nav button{font-size:14px;padding:10px 12px;min-height:44px}#portal-checkpoint .pv-status{bottom:calc(var(--player-dock-height,132px) + 120px);left:8px;right:8px;font-size:14px}#portal-checkpoint .pv-dialog-tools{flex-wrap:wrap}#portal-checkpoint .pv-dialog-tools button{min-height:44px;padding:5px 10px}}
@media(max-height:520px) and (min-width:601px){#portal-checkpoint .pv-key-dialog[open]{display:grid;grid-template-columns:minmax(120px,170px) 180px;width:370px;gap:8px}#portal-checkpoint .pv-dialog-tools{flex-direction:column;align-self:center}#portal-checkpoint .pv-code-status{grid-column:1/-1;margin:0;font-size:12px}#portal-checkpoint .pv-keypad h2{font-size:12px}#portal-checkpoint .pv-activate{font-size:10px;min-height:44px}#portal-checkpoint .pv-nav{bottom:calc(var(--player-dock-height,76px) + 6px)}#portal-checkpoint .pv-status{bottom:calc(var(--player-dock-height,76px) + 70px)}}
