/* Additions for the framework-free local version. Original styles load first. */
/* Non-modal announcement: no full-screen backdrop, and below other popup layers. */
.vote-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;width:min(430px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:32px 28px 24px;text-align:center;background:linear-gradient(160deg,#352c1e,#1d180f);border:3px ridge #8e784c;box-shadow:0 16px 48px #0009,inset 0 0 0 3px #17130d;color:#f5e9bf;font-family:var(--font-inter),sans-serif}
.vote-label{display:inline-block;padding:5px 12px;border:1px solid #88712e;background:#19150c;color:#ffdc42;font:18px var(--font-rs),monospace;letter-spacing:3px}
.vote-popup h2{margin:18px 0 14px;color:#ffdd45;font:36px/1.1 var(--font-rs),monospace;text-shadow:2px 2px #120e08}
.vote-popup p{margin:0;color:#cfc5ae;font-size:14px;line-height:1.65}
.vote-popup strong{color:#ffdd45;font-weight:600}
.vote-close{position:absolute;right:8px;top:8px;width:40px;height:40px;border:0;background:transparent;color:#cabb95;font:28px/1 sans-serif;cursor:pointer}
.vote-action{display:block;width:100%;min-height:48px;margin:24px 0 16px;border:3px ridge #ffe37b;background:linear-gradient(#ffe86b,#e5af12);color:#211706;font:24px var(--font-rs),monospace;box-shadow:0 3px 0 #100d08;cursor:pointer}
.vote-action:hover{filter:brightness(1.08)}
.vote-close:hover{color:#ffe46a}
.vote-popup button:focus-visible{outline:2px solid #fff3b7;outline-offset:3px}
.vote-popup .vote-footnote{font-size:11px;line-height:1.5;color:#a99d82}
/* Native dialogs stay in the top layer; hide this card while another flow is active. */
body:has(dialog[open]) .vote-popup,body.local-dock-open .vote-popup{visibility:hidden;pointer-events:none}
@media(max-width:480px){.vote-popup{padding:28px 20px 22px}.vote-popup h2{font-size:32px}.vote-popup p{font-size:13px}.vote-popup .vote-footnote{font-size:11px}}
[hidden]{display:none!important}
/* Local SVG replacement for the original canvas logo. */
.sprite.ge-mark{image-rendering:pixelated;object-fit:contain}
.local-empty{padding:32px;text-align:center;color:#c7b98e}
/* Native dialogs for help, settings, and wallet guidance. */
.local-dialog{width:min(440px,calc(100% - 32px));padding:26px;background:#292216;color:#ffdf49;border:3px ridge #89734b;box-shadow:0 12px 80px #000;font-family:var(--font-rs),monospace}
.local-dialog::backdrop{background:#000b}
.local-dialog h2{margin:0 30px 16px 0;font-size:28px}
.local-dialog p{line-height:1.6;color:#d0c7b4;font-family:var(--font-inter),sans-serif;font-size:14px}
.local-dialog a{color:#ffdf49;text-decoration:underline}
.local-close{position:absolute;right:12px;top:10px;background:#17130d;color:#ffdf49;border:1px solid #675738;padding:5px 10px;cursor:pointer}
.local-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.local-options button,.local-options a{padding:10px 16px;background:#17130d;border:1px solid #675738;color:#ffdf49;cursor:pointer}
/* Anchor the mobile sorting menu above board rows. */
.bd-sortpick{position:relative}
.local-sort{position:absolute;left:0;top:100%;min-width:180px;z-index:30;padding:5px;background:#272015;border:2px ridge #78633f;box-shadow:0 6px 20px #0008}
.local-sort button{display:block;width:100%;padding:8px 12px;text-align:left;color:#ffdf49;background:transparent;border:0;cursor:pointer}
.local-sort button:hover,.local-sort button:focus{background:#4c4028}
/* Static item details share the original fonts and colors. */
.local-item{padding:28px}
.local-item h1{font-size:38px;margin:20px 0 8px}
.local-item img{width:80px;height:80px;object-fit:contain;image-rendering:pixelated;float:right}
.local-item dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:30px 0}
.local-item dt{color:#afa58f}
.local-item dd{margin:5px 0;color:#ffdf49;font-size:24px}
.local-item code{word-break:break-all;color:#c6ba9a;font-size:12px}
.local-item a{color:#ffdf49}
/* On small screens, show the selected offer as a scrollable overlay. */
@media(max-width:760px){body.local-dock-open .ex-dock{display:block;position:fixed;inset:64px 8px 8px;z-index:70;overflow:auto;background:#19150e}.local-item{padding:20px}}
