/* Brass and deep-green command rail. Popovers do not increase footer height. */
.footer.mining-dock{display:grid;grid-template-columns:minmax(170px,1fr) auto auto;gap:14px;align-items:center;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(120deg,#193b39f7,#11272ef7);color:#f6f0d8;border-top:2px solid #bca56c;box-shadow:0 -8px 24px #09232230;isolation:isolate;overflow:visible;backdrop-filter:blur(16px)}
.mining-dock:before{content:'';position:absolute;inset:4px 9px;pointer-events:none;border:1px solid #e3cb8520;border-radius:7px;z-index:-1}.mining-dock .footer-identity{display:grid;grid-template-columns:1fr;gap:2px;min-width:0;width:auto;align-items:start}.mining-dock .footer-identity>strong{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff1c8;font-size:13px}.mining-dock .dock-code{justify-self:start;padding:0;background:none;border:0;color:#f0ddad;font:11px ui-monospace,monospace;letter-spacing:.2px;white-space:nowrap;min-height:20px}.mining-dock .status{display:block!important;max-width:270px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#b9d4c6;font-size:10px;font-weight:400;background:none;padding:0;text-align:left;min-height:14px}.mining-dock .status:before{content:'●';font-size:7px;margin-right:5px;color:#9bc7ae}.mining-dock button:focus-visible,.mining-dock summary:focus-visible{outline:3px solid #f8d47b;outline-offset:3px}.mining-dock .footer-economy{grid-column:auto;display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0;width:auto;padding:0;border:0}.mining-dock .dock-actions{display:flex;align-items:center;gap:7px;margin:0;width:auto}.mining-dock .dock-actions button,.mining-dock>.dock-account{min-height:42px;padding:8px 12px;font-size:12px;white-space:nowrap;border-radius:11px}.mining-dock .ghost{background:#ffffff0d;border:1px solid #d9c58950;color:#f2e7c8}.mining-dock .yellow{background:linear-gradient(#f7d988,#d6b263);color:#203b36;box-shadow:inset 0 1px #fff5cc}.mining-dock .dock-inbox{position:relative;display:flex;gap:5px;align-items:center}.mining-dock .dock-inbox img{width:25px;height:25px}.mining-dock .dock-inbox [data-inbox-count]{position:absolute;right:-3px;top:-6px;min-width:18px;height:18px;border-radius:10px;background:#dca947;color:#192f31;font-size:10px;display:grid;place-items:center;border:1px solid #fff0bf}.mining-dock [hidden]{display:none!important}
.mining-dock .dock-wallet{position:relative;margin:0;padding:0;border:0;background:none;flex:none;min-width:110px}.mining-dock .dock-wallet summary{display:flex;align-items:center;gap:7px;cursor:pointer;list-style:none;padding:0;color:#f5e4b3;min-height:48px}.mining-dock .dock-wallet summary::-webkit-details-marker{display:none}.dock-pouch{width:50px;height:50px;filter:drop-shadow(0 3px 3px #0006);transition:transform .3s}.dock-wallet[open] .dock-pouch{transform:rotate(-8deg) scale(1.1)}.mining-dock .dock-wallet summary small{display:block;color:#bad0bb;font-size:10px;margin-bottom:3px}.mining-dock .dock-wallet summary b{font-size:12px;white-space:nowrap}.mining-dock .dock-wallet .dock-gems{position:absolute;bottom:calc(100% + 18px);left:auto;right:0;width:320px;max-width:calc(100vw - 28px);display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:18px;border:1px solid #bca568;border-radius:20px;background:linear-gradient(145deg,#284940,#152d32);color:#f2e8c8;box-shadow:0 12px 40px #001a1bcc;z-index:3;max-height:60dvh;overflow:auto}.pouch-heading{grid-column:1/-1;margin-bottom:8px}.pouch-heading strong,.pouch-heading small{display:block}.pouch-heading strong{font-size:15px}.pouch-heading small{font-size:11px;margin-top:5px;color:#bdd4c6}.pouch-fund{display:grid!important;grid-template-columns:25px 1fr auto;align-items:center;gap:6px;border:1px solid #edd48b22;background:#ffffff09;border-radius:9px;padding:9px 6px;font-size:11px;transform-origin:50% 120%}.pouch-fund .treasure-icon{width:25px;height:25px}.pouch-fund b{color:#ffe3a0}.dock-wallet[open] .pouch-fund{animation:pouch-release .5s cubic-bezier(.16,.8,.3,1) both;animation-delay:calc(var(--fund)*35ms)}@keyframes pouch-release{from{opacity:0;transform:translateY(30px) scale(.65) rotate(-12deg)}to{opacity:1;transform:none}}
/* Single persistent reminder. Actual games and help dialogs always stay on top. */
.activity-beacon{position:fixed;right:22px;bottom:calc(var(--footer-height,95px) + 18px);z-index:65;display:flex;align-items:center;gap:14px;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - var(--footer-height,95px) - 130px);overflow:auto;border:1px solid #dfbf70;border-radius:24px;padding:22px 22px 22px 10px;background:linear-gradient(125deg,#1c4545f5,#122a31fa),url('mine/cavern-3.webp') center/cover;color:#f8f2d6;box-shadow:0 16px 55px #061b2980,0 0 0 5px #e5bd5d15;animation:beacon-arrive .45s ease-out}.activity-beacon h2{font-size:23px;line-height:1.2;color:#ffe6a3;margin:5px 0 10px}.activity-beacon .eyebrow{font-size:10px;color:#e3cb92;margin:0}.beacon-copy{min-width:0;flex:1}.beacon-copy>p:not(.eyebrow){font-size:14px;line-height:1.55;margin:0 0 13px}.activity-beacon button{width:100%;font-size:15px;min-height:46px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#ffe4a0,#d7b365);color:#213a35}.beacon-art{width:90px;flex:none;position:relative}.beacon-art img{position:relative;width:100%;transform-origin:50% 10%;animation:beacon-sway 4s ease-in-out infinite}.beacon-halo{position:absolute;inset:20% -10% 5%;border-radius:50%;background:radial-gradient(#ffda7255,transparent 70%);animation:beacon-light 3s ease-in-out infinite alternate}.beacon-error:empty{display:none}.beacon-error:not(:empty){color:#ffd4b6;background:#803b2622;padding:8px;margin:10px 0 0!important}.shell:has(.activity-beacon) .golden-ticket-float,.shell:has(.activity-beacon) .dragon-pending{visibility:hidden}body:has(dialog[open]) .activity-beacon{visibility:hidden;pointer-events:none}.activity-beacon:has(button:disabled) .beacon-art img{animation-play-state:paused}@keyframes beacon-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes beacon-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes beacon-light{to{opacity:.45;transform:scale(.92)}}
.trade-theatre{position:relative;overflow:hidden;height:265px;border:1px solid #bfa874;border-radius:20px;background:linear-gradient(#132c3a33,#0a232fcc),url('expedition/market.webp') center/cover;isolation:isolate}.trade-lamplight{position:absolute;inset:0;background:radial-gradient(ellipse at 55% 65%,#ffdf8155,transparent 65%);animation:beacon-light 4s ease-in-out infinite alternate}.trade-host{position:absolute;left:3%;bottom:-8%;width:47%;height:100%;display:flex;align-items:end;justify-content:center}.trade-host .exp-sprite{width:100%;max-width:250px;filter:drop-shadow(0 9px 10px #001e29)}.trade-parchment{position:absolute;right:10%;top:18%;width:42%;height:66%;background:linear-gradient(120deg,#f5e7bc,#dac28b);border:1px solid #b48c48;border-radius:5px 14px 10px 4px;box-shadow:0 12px 25px #00141c77,inset 0 0 25px #97763844;text-align:center;padding:18px 8px;color:#3f4c37;animation:trade-scroll .65s cubic-bezier(.2,.8,.2,1) both}.trade-parchment:before,.trade-parchment:after{content:'';position:absolute;left:8px;right:8px;top:8px;bottom:8px;border:1px solid #8a713144;pointer-events:none}.trade-parchment:after{inset:12px;border-style:dotted}.trade-parchment span{display:block;letter-spacing:3px;font-size:9px}.trade-parchment b{display:block;font-family:Georgia,serif;font-size:29px;margin:12px 0 6px}.trade-parchment i{font-family:Georgia,serif;font-size:14px}.trade-parchment img{position:absolute;width:100px;right:-22px;bottom:-24px;animation:trade-stamp .65s .6s cubic-bezier(.2,.9,.3,1.3) both}.trade-funds .treasure-icon{position:absolute;width:27px;height:27px;left:75%;top:72%;animation:trade-payment 1.6s calc(.2s + var(--trade-fund)*.09s) ease-in-out both}.trade-receipt>.eyebrow{margin-top:22px}.trade-paid{padding:15px 18px;background:#edf2e8;border-left:3px solid #b0924e;border-radius:0 12px 12px 0}.trade-paid span,.trade-paid strong{display:block}.trade-paid span{font-size:12px;color:#526655;margin-bottom:7px}.trade-receipt .action-row{gap:12px;margin-top:20px}.trade-task-receipt li{margin:9px 0;line-height:1.5}.helper-visit.is-negotiating .helper-stage{filter:saturate(.8)}.helper-visit.is-negotiating .helper-stage:after{content:'Dein Handschlag wird bestätigt …';position:absolute;left:10px;right:10px;bottom:10px;background:#183d36e8;color:#ffe6a7;border:1px solid #cfb374;border-radius:12px;padding:13px;text-align:center;font-size:14px;animation:beacon-light 1.2s ease-in-out infinite alternate}@keyframes trade-scroll{from{opacity:0;transform:translateY(45px) rotate(8deg)}to{opacity:1;transform:rotate(-4deg)}}@keyframes trade-stamp{from{opacity:0;transform:scale(1.7) rotate(22deg)}to{opacity:1;transform:scale(1) rotate(8deg)}}@keyframes trade-payment{0%{opacity:0;transform:translate(0,20px) scale(.6)}25%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translate(-240px,-60px) scale(.5)}}
@media(max-width:1100px){.mining-dock .dock-inbox>span{display:none}.footer.mining-dock{gap:10px;padding-inline:12px}.mining-dock .footer-economy{gap:10px}.mining-dock .dock-wallet{min-width:100px}}
@media(max-width:950px){.footer.mining-dock{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}.mining-dock .footer-identity{grid-column:1;grid-row:1;grid-template-columns:minmax(80px,1fr) auto;align-items:center}.mining-dock .status{grid-column:1/-1}.mining-dock>.dock-account{grid-column:2;grid-row:1;min-height:34px;padding:6px 10px}.mining-dock .footer-economy{grid-column:1/-1;grid-row:2;justify-content:space-between}.mining-dock .dock-wallet .dock-gems{left:0;right:auto}.mining-dock .dock-wallet summary{min-height:42px}.dock-pouch{width:43px;height:43px}.mining-dock .dock-actions button{min-height:40px;padding:7px 10px}.mining-dock .dock-code{font-size:9px}.mining-dock .footer-identity>strong{font-size:12px;max-width:none}}
@media(max-width:500px){.footer.mining-dock{padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:4px 8px}.mining-dock .footer-identity{grid-template-columns:1fr;gap:0}.mining-dock .footer-identity>strong{max-width:240px;font-size:12px}.mining-dock .dock-code{font-size:9px;min-height:17px}.mining-dock .status{font-size:9px;min-height:12px}.mining-dock .dock-wallet{min-width:0}.mining-dock .footer-economy{gap:5px}.mining-dock .dock-actions{gap:5px}.mining-dock .dock-actions button{font-size:11px;padding:7px 9px}.mining-dock .dock-inbox img{width:24px;height:24px}.mining-dock .dock-wallet summary{gap:4px}.mining-dock .dock-wallet summary b{font-size:10px}.mining-dock .dock-wallet summary small{font-size:9px}.mining-dock .dock-pouch{width:37px;height:42px}.activity-beacon{right:12px;bottom:calc(var(--footer-height,110px) + 12px);width:calc(100vw - 24px);padding:16px 16px 16px 4px;gap:6px;border-radius:20px}.beacon-art{width:64px}.activity-beacon h2{font-size:20px}.beacon-copy>p:not(.eyebrow){font-size:12px;line-height:1.45;margin-bottom:10px}.activity-beacon button{min-height:42px;font-size:14px}.trade-theatre{height:220px}.trade-parchment{right:13%;width:45%;padding-top:16px}.trade-parchment b{font-size:23px}.trade-parchment img{width:80px;right:-22px;bottom:-26px}.trade-parchment i{font-size:12px}.trade-host{left:-5%;width:57%}.trade-receipt .action-row button{width:100%}}
@media(prefers-reduced-motion:reduce){.beacon-art img,.beacon-halo,.activity-beacon,.pouch-fund,.trade-parchment,.trade-parchment img,.trade-lamplight,.trade-funds .treasure-icon{animation:none!important}.trade-funds{display:none}}
@media print{.activity-beacon,.footer.mining-dock{display:none}}

@media(max-width:500px){.mining-dock .dock-wallet summary b{white-space:normal;overflow-wrap:anywhere;display:block;max-width:105px}}

body:has(dialog[open]) .activity-beacon.activity-inline{visibility:visible;pointer-events:auto;position:relative;inset:auto;width:100%;max-height:none;margin:0 0 22px;box-sizing:border-box;box-shadow:0 8px 24px #071c3022}
