/* Generated by game-rules.mjs. Edit game-rules-themes.mjs. */
@font-face{font-family:"NA Geist";font-style:normal;font-weight:100 900;font-display:swap;src:url("/play/games/neon-straits/fonts/geist-latin-ext.woff2") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"NA Geist";font-style:normal;font-weight:100 900;font-display:swap;src:url("/play/games/neon-straits/fonts/geist-latin.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"NA Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url("/play/games/neon-straits/fonts/geist-mono-latin-ext.woff2") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"NA Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url("/play/games/neon-straits/fonts/geist-mono-latin.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --bg:#101211; /* games/neon-straits/style.css .na-page --na-bg: #101211 */
  --ink:#f0eee4; /* games/neon-straits/style.css .na-page --na-text: #f0eee4 */
  --muted:#b1b7ad; /* games/neon-straits/style.css .na-page --na-muted: #b1b7ad */
  --accent:#e1ed72; /* games/neon-straits/style.css .na-page --na-pink: #e1ed72 */
  --line:#3c423d; /* games/neon-straits/style.css .na-page --na-line: #3c423d */
  --panel:#191c1b; /* games/neon-straits/style.css .na-page --na-panel: #191c1b */
  --display:"NA Geist",Arial,Helvetica,sans-serif; /* games/neon-straits/style.css .na-page --na-display: var(--na-font) */
  --reading:"NA Geist",Arial,Helvetica,sans-serif; /* games/neon-straits/style.css .na-page --na-font: "NA Geist",Arial,Helvetica,sans-serif */
  --label:"NA Geist Mono",ui-monospace,Consolas,monospace; /* games/neon-straits/style.css .na-page --na-mono: "NA Geist Mono",ui-monospace,Consolas,monospace */
  --sheet:#101211; /* games/neon-straits/style.css .na-page --na-bg: #101211 */
  --titleInk:#f0eee4; /* games/neon-straits/style.css .na-page --na-text: #f0eee4 */
  --dot:#e1ed72; /* games/neon-straits/style.css .na-page --na-pink: #e1ed72 */
  --weight:850; /* games/neon-straits/style.css .na-masthead h1: 850 */
  --tracking:-.045em; /* games/neon-straits/style.css .na-masthead h1: -.045em */
  --casing:uppercase; /* games/neon-straits/style.css .na-masthead h1: uppercase */
  --italic:normal; /* games/neon-straits/style.css @font-face: normal */
  --buttonBg:#e1ed72; /* games/neon-straits/style.css .na-page --na-pink: #e1ed72 */
  --buttonInk:#161b10; /* games/neon-straits/style.css .na-main button,.na-rules button: #161b10 */
  --buttonBorder:#e1ed72; /* games/neon-straits/style.css .na-page --na-pink: #e1ed72 */
  --buttonRadius:2px; /* games/neon-straits/style.css .na-page :is(button,input,select): 2px */
  --buttonShadow:none; /* games/neon-straits/style.css .na-main button,.na-rules button: none */
  --panelInk:#f0eee4; /* games/neon-straits/style.css .na-page --na-text: #f0eee4 */
  --panelMuted:#b1b7ad; /* games/neon-straits/style.css .na-page --na-muted: #b1b7ad */
  --panelBorder:#3c423d; /* games/neon-straits/style.css .na-page --na-line: #3c423d */
  --panelRadius:6px; /* games/neon-straits/style.css .na-page>header button: 6px */
  --panelShadow:none; /* games/neon-straits/style.css .na-main button,.na-rules button: none */
  --cover-position:50% 53%;
  --motif:"⌁";
}
#rules-content h2::before{content:counter(section,decimal-leading-zero);}

[data-toy]{overflow:clip;min-width:0;max-width:100%;overflow-wrap:anywhere}
[data-toy] button{cursor:pointer;color:inherit;font:inherit}
[data-toy] button:focus-visible{outline:3px solid #9befed;outline-offset:-3px}
[data-toy] [hidden]{display:none!important}
.rival-desk,.support-console,.threat-console{position:relative;padding:14px;border:1px solid #59737e;border-radius:10px;background:linear-gradient(115deg,#0b1922da,#112431b8,#28132be8),url(art/neon-straits-cover-thumb.jpg) 50%/cover;color:#dcecf0;font:12px/1.4 monospace;box-shadow:inset 2px 0 4px #84edff55,inset -2px 0 4px #ff62c755}
.rival-desk{display:grid;grid-template-columns:minmax(0,1fr) 138px;gap:12px;align-items:center}
.cap-stacks{display:flex;justify-content:space-around;gap:8px}
.cap-stack{position:relative;display:flex;flex-direction:column;align-items:center;gap:35px;padding-top:30px;font-size:11px}
.capital-add,.deal-chips,.stack-chips{display:grid;place-items:center;width:64px;height:30px;padding:0;border:3px solid var(--corp,#59c7cf);border-radius:50%;background:radial-gradient(ellipse,#bdd4d5 50%,#19313b 52% 66%,var(--corp,#59c7cf) 68%);color:#14232b!important;font-weight:700!important;box-shadow:0 5px #14232b,0 8px var(--corp,#59c7cf),0 12px #14232b,0 15px var(--corp,#59c7cf),2px 20px 8px #0009}
.capital-remove{position:absolute;right:0;top:0;width:30px;height:23px;border:3px solid var(--corp);border-radius:50%;background:#24414a}
.capital-add:active,.capital-remove:active,.deal-chips:active{translate:0 2px}
.rival-card{position:relative;width:138px;height:185px;border:0;background:none;padding:0;perspective:700px;transform:rotate(3deg)}
.rival-back,.rival-face{position:absolute;inset:0;backface-visibility:hidden;border:2px solid #85bdc6;border-radius:6px;background:#16262f;overflow:hidden;transition:transform .4s;box-shadow:4px 6px 8px #0009}
.rival-back{display:grid;place-items:center;background:repeating-linear-gradient(45deg,#17373f 0 3px,#12232b 3px 8px);font:35px serif}
.rival-face{transform:rotateY(180deg)}
.rival-face img{width:100%;height:135px;object-fit:cover}
.rival-face strong{display:block;padding:5px;font-size:11px}
.rival-card[data-face=up] .rival-back{transform:rotateY(-180deg)}
.rival-card[data-face=up] .rival-face{transform:none}
.rival-desk .neon-readout,.rival-terms{grid-column:1/-1}
.neon-readout:empty,.rival-terms:empty{display:none}
.rival-threat{grid-column:2;width:58px;height:44px;border:3px double #e279aa;border-radius:8px;background:#14232b;color:#ffc4df!important}
.neon-readout{padding:4px;text-align:center}
.proposal-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:6px}
.proposal-card{min-width:0;display:flex;flex-direction:column;padding:0 0 8px;border:1px solid #7dbb9b;border-radius:6px;background:#13242e;box-shadow:3px 5px 6px #0009;transform:rotate(-2deg);overflow:hidden}
.proposal-card[data-side=counter]{transform:rotate(2deg)}
.proposal-card>img{width:100%;height:82px;object-fit:cover;flex:none}
.proposal-band{background:#4fbf7a;color:#10291f;font:700 10px monospace;padding:4px}
.proposal-title{font:700 14px/1.2 Georgia;padding:6px}
.proposal-text{font:11px/1.3 monospace;padding:0 6px;text-align:left}
.support-tokens{display:flex;justify-content:center;gap:18px;height:86px;margin-top:10px}
.support-token{position:relative;width:76px;height:74px;padding:0 0 6px;border:1px solid #79a6ab;border-radius:4px;background:#21343c;font-size:10px!important}
.support-token img{display:block;width:100%;height:48px;object-fit:cover;object-position:center 22%}
.support-disc{position:absolute;bottom:-8px;left:calc(50% - 12px);width:24px;height:24px;border:4px double #d7e8e8;border-radius:50%;background:var(--corp);color:#14232b;font:700 12px/16px monospace;z-index:3;pointer-events:none;transform:translate(var(--vote-x,0),var(--vote-y,0));transition:transform .4s}
.support-token[aria-pressed=true]{outline:2px solid #8ee6ed}
.deal-objects{display:flex;align-items:center;justify-content:center;gap:34px;height:60px}
.deal-chips{width:52px;height:25px;margin-bottom:14px}
.support-stamp{width:40px;height:40px;border:4px double #dfaccb;border-radius:50%;background:#714668}
.docket-reset{width:34px;height:45px;border:1px solid #86b79c;padding:0;transform:rotate(8deg);box-shadow:3px 3px #426258,6px 6px #102522}
.docket-reset img{width:100%;height:100%;object-fit:cover}
.deal-ledger{font-size:11px;text-align:center}
.district-tile{position:relative;height:100px;max-width:310px;margin:10px auto 0;border:2px solid #77a0a5;border-radius:6px;overflow:hidden}
.district-tile>img{width:100%;height:100%;object-fit:cover}
.district-markers{position:absolute;inset:0}
.power-marker,.unrest-marker{position:absolute;top:20%;left:12%;display:grid;place-items:center;width:58px;height:44px;border:3px double #b1d3cf;border-radius:8px;background:#263443;font-size:9px}
.unrest-marker{left:auto;right:12%;top:40%;border-radius:50%;background:#592a3f}
.threat-sky{position:relative;height:155px;overflow:hidden}
.threat-sky img{width:100%;height:100%;object-fit:cover}
.last-sign{position:absolute;right:12px;bottom:15px;opacity:0;color:#ffb1d4;text-shadow:0 0 9px #f17eb6}
.threat-console[data-dark=true] .event-bulletin,.threat-console[data-dark=true] img{filter:brightness(.04)}
.threat-sky[data-dark=true] .last-sign{opacity:1}
.threat-bar{height:25px;display:grid;grid-template-columns:repeat(25,minmax(0,1fr));gap:3px;border:2px solid #4a5969;border-radius:10px;padding:4px;background:#0a141e;margin:15px 0}
.threat-segment{background:#263342;border-radius:3px}
.threat-segment[data-lit=true]{background:#f27cc3;box-shadow:0 0 6px #ff62c7}
.event-bulletin{width:100%;padding:12px;border:1px solid #b775a4;border-radius:5px;background:linear-gradient(#142230ba,#142230f2),url(art/corp-haas-bioroid-v2.webp) 50%/cover;text-align:left}
.event-sample,.event-text{display:block;margin-top:8px}
[data-toy=straits-discoveries]{position:absolute;inset:0;pointer-events:none;z-index:1}
.cover button{position:absolute;border:0;background:none;padding:0;pointer-events:auto;cursor:default;color:transparent}
.cover button:hover{cursor:pointer}
.header-sky{inset:0 0 55%}
.header-neon{right:8%;top:42%;width:8%;height:12%}
.header-towers{left:22%;top:15%;width:18%;height:33%}


/* Painter slot: art/rules-lit-windows.webp; no window overlay before touch. */.header-towers[data-floors]::after{content:"";position:absolute;inset:0;background:url(art/rules-lit-windows.webp) 50%/100% 100%;box-shadow:inset 0 calc(var(--floors,0) * 28px) #040d16e8}
.header-neon.steady{box-shadow:0 0 15px #ff86c888}
.cover-copy{pointer-events:none}
.cover-copy a{pointer-events:auto}
@media(max-width:560px){.rival-desk{grid-template-columns:minmax(0,1fr) 100px;gap:8px}
.rival-card{width:100px;height:160px}
.rival-face img{height:110px}
.capital-add,.stack-chips{width:48px}
.cap-stack{font-size:9px}
.proposal-title{font-size:13px}
.proposal-text{font-size:10px}
.support-token{width:66px}
.district-tile{height:90px}}
@media(prefers-reduced-motion:reduce){[data-toy],[data-toy] *{animation:none!important;transition:none!important}}
