@font-face{font-family:Rajdhani;src:url('/assets/fonts/Rajdhani-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Rajdhani;src:url('/assets/fonts/Rajdhani-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:ShareTech;src:url('/assets/fonts/ShareTechMono-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root{color-scheme:dark;--bg:#071014;--ink:#c5d5d4;--muted:#829b9e;--dim:#47656c;--amber:#ffb831;--line:#2d4249;--cyan:#8fc2c4;--good:#8ad3bd;--bad:#f09b83;font-family:ShareTech,monospace;font-synthesis:none;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button,input,select{border-radius:0}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--amber);outline-offset:4px}button{transition:color .12s,background .12s}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}a{color:var(--amber)}::selection{background:var(--amber);color:#071014}#boot{padding:15vh 13vw;font-size:24px;letter-spacing:3px}
.game{position:relative;min-height:100dvh;isolation:isolate;background:radial-gradient(ellipse at -12% 12%,#2d444957,transparent 54%),radial-gradient(ellipse at 106% 88%,#334b5252,transparent 50%),radial-gradient(ellipse at 50% 45%,#02070adc,transparent 80%),linear-gradient(120deg,#0a1519,#030a0d 48%,#0b161c);overflow:hidden}
.game-surface{min-height:100dvh;display:flex;flex-direction:column;position:relative;z-index:2}
.background-grid{position:absolute;inset:130px 70px 140px;z-index:0;pointer-events:none;background-image:radial-gradient(#627c7c55 .7px,transparent .9px);background-size:31px 31px;opacity:.3;mask-image:radial-gradient(ellipse at center,#000,transparent 85%)}
.background-grid:after{content:'+';position:absolute;left:11%;top:16%;font-size:26px;color:#638a8e80;text-shadow:130px 0 #638a8e80,260px 0 #638a8e80,390px 0 #638a8e80,520px 0 #638a8e80,650px 0 #638a8e80,780px 0 #638a8e80,910px 0 #638a8e80,1040px 0 #638a8e80,0 245px #638a8e80,260px 245px #638a8e80,520px 245px #638a8e80,780px 245px #638a8e80,1040px 245px #638a8e80,0 490px #638a8e80,260px 490px #638a8e80,520px 490px #638a8e80,780px 490px #638a8e80,1040px 490px #638a8e80}
.screen-grain{position:absolute;inset:0;z-index:9;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z' opacity='.6'/%3E%3C/svg%3E")}
.scanlines{position:absolute;inset:0;z-index:10;pointer-events:none;background:repeating-linear-gradient(0deg,#000 0,#000 1px,transparent 1px,transparent 3px);opacity:.13}.no-texture .screen-grain,.no-texture .scanlines{display:none}
.game-header{width:min(1340px,calc(100% - 110px));margin:0 auto;padding-top:11.7vh;display:flex;justify-content:space-between;align-items:center;gap:25px}.title-group{position:relative}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--dim);display:block;margin-bottom:1px}h1{font-family:Rajdhani,sans-serif;font-size:clamp(28px,2.65vw,44px);line-height:1;letter-spacing:3.8px;color:#bfd3d0}.title-group:after{content:'//';position:absolute;left:calc(100% + 48px);bottom:0;font-family:Rajdhani;font-size:40px;font-style:italic;font-weight:500;color:#3a535a40}.header-right{display:flex;align-items:center;gap:32px}.game-date{border:1px solid #293b405c;padding:8px 13px;font-size:11px;letter-spacing:1px;color:#739093}.settings-trigger{background:none;border:0;padding:4px;font-size:9px;letter-spacing:1.3px;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:4px}.settings-trigger span{font-size:37px;color:#6a858b86;line-height:1}.settings-trigger:hover{color:var(--amber)}
.game-body{width:min(1250px,calc(100% - 140px));margin:0 auto;display:grid;grid-template-columns:280px 280px minmax(0,1fr);gap:52px;padding-top:12.6vh;padding-bottom:40px;flex:1;align-items:start}.primary-menu{display:flex;flex-direction:column;gap:18px;padding-top:1px}.menu-slot{position:relative}.menu-index{position:absolute;top:-11px;left:48px;font-size:9px;color:#3b545b;letter-spacing:.5px;line-height:1}.menu-button{position:relative;width:100%;min-height:53px;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;font-family:Rajdhani,sans-serif;font-size:24px;font-weight:500;text-transform:uppercase;letter-spacing:2.5px;padding:9px 21px 9px 46px;border:0;background:var(--line);color:#bed0cc;clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%);isolation:isolate}.menu-button:before{content:'';position:absolute;inset:1px;background:#071013;clip-path:inherit;z-index:-1}.menu-button span{font-family:ShareTech;font-size:18px;color:#536d72}.menu-button:hover:before{background:#14262b}.menu-button:hover{color:#e3f2ed;background:#647b7d}.menu-button.active{background:var(--amber);color:#172327}.menu-button.active:before{background:var(--amber)}.menu-button.active span{color:#263129}.menu-slot:has(.active):after{content:'';position:absolute;right:0;top:-7px;width:53px;height:4px;background:#b77d24}.menu-slot:has(.active) .menu-index{color:#9f7d3a}.menu-button:focus-visible{outline:none;box-shadow:inset 0 0 0 3px #c5e2e0}.secondary-menu{display:flex;flex-direction:column;gap:8px}.secondary-menu .menu-button{font-size:21px;min-height:49px;padding-left:30px;letter-spacing:1.5px}
.detail-panel{font-size:15px;line-height:1.55;letter-spacing:.65px;min-width:0;padding-top:0}.data-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;min-height:42px;padding:9px 0}.data-row>span{color:#afc5c6}.data-row strong{font-weight:400;text-align:right;max-width:56%;color:#d4e3dd}.briefing .data-row{padding:10px 0;min-height:43px}.briefing .data-row:nth-child(3) strong{color:var(--good)}.decision{margin-top:31px;padding-top:20px;border-top:1px solid #2f454b69}.context{font-size:10px;line-height:1.6;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-bottom:9px}.decision-copy{font-size:14px;line-height:1.8;color:#abbfc0;margin-bottom:20px}.note{font-size:12px;line-height:1.8;letter-spacing:.2px;color:var(--muted);margin-top:18px;margin-bottom:16px}.briefing>.note{margin-top:27px}.detail-title{font-family:Rajdhani,sans-serif;font-size:27px;line-height:1.2;text-transform:uppercase;letter-spacing:1.7px;margin:0 0 17px;color:#cfdfda}.action{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:39px;padding:8px 16px;border:1px solid #456067;background:#111f2480;font-size:13px;line-height:1.35;letter-spacing:1px;text-transform:uppercase;clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%)}.action>span{font-size:15px;color:var(--cyan)}.action:hover{border-color:var(--amber);color:var(--amber);background:#16272c}.action.primary{background:var(--amber);color:#112126;border-color:var(--amber)}.action.primary span{color:inherit}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.outcome{color:var(--amber);border-left:2px solid;padding:10px 17px;margin-top:20px;font-size:17px}
.local-tabs{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:15px;padding-bottom:12px;border-bottom:1px solid #2c4046}.local-tabs button{border:0;border-bottom:1px solid transparent;padding:0 0 4px;background:none;color:var(--muted);font-size:12px}.local-tabs button.active{color:var(--amber);border-bottom-color:var(--amber)}.field{display:flex;flex-direction:column;gap:9px;margin:18px 0;font-size:12px;color:#9cb5b8;letter-spacing:.3px}.field input,.field select{padding:9px 12px;min-height:41px;width:100%;font-size:15px;border:1px solid #39525b;background:#0b181d;color:#d0deda}.field input::placeholder{color:#6e888e}.field select{padding-right:24px}.field input[type=range]{padding:0;min-height:25px;background:transparent;accent-color:var(--amber)}.input-unit{position:relative}.input-unit input{padding-right:60px}.input-unit>span{position:absolute;right:15px;top:10px;color:var(--muted);font-size:13px}.compact{flex-direction:row;align-items:center;justify-content:space-between;margin-top:0}.compact select{width:65%}.market-row{display:flex;justify-content:space-between;align-items:center;width:100%;gap:15px;text-align:left;padding:14px 0;background:transparent;border:0;border-bottom:1px solid #2d424966;font-size:14px;letter-spacing:.4px}.market-row:hover{color:var(--amber)}.market-row small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.market-price{text-align:right;white-space:nowrap}.positive{color:var(--good)!important}.negative{color:var(--bad)!important}.candidate,.news-item{border-bottom:1px solid #2d4249;padding:20px 0}.candidate h3,.news-item h3{font-family:Rajdhani,sans-serif;font-size:24px;line-height:1.2;letter-spacing:.5px;margin-bottom:9px}.candidate p,.news-item>p:not(.context){font-size:12px;line-height:1.8;color:#a8bfc1}.candidate .note{margin:7px 0}.candidate .data-row{font-size:13px;min-height:30px}.candidate .action{margin-top:9px}.news-effect{color:var(--good)!important;margin-top:12px}.news-item .action{font-size:11px;padding:7px 11px;gap:8px}.history-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;padding:13px 0;border-bottom:1px solid #2d424966;font-size:12px}.history-row>span{max-width:65%}.history-row strong{font-weight:400}.history-row small{width:100%;color:var(--muted);font-size:10px}.review-line{font-size:13px;line-height:1.9;padding:12px 0;border-bottom:1px solid #2d4249}.approaches{display:grid;gap:7px;margin-top:20px}.approaches button{border:1px solid #2d4249;background:#0c191e;text-align:left;padding:9px 12px;font-size:12px}.approaches button:not(:disabled):hover{color:var(--amber);border-color:var(--amber)}.approaches small{display:block;font-size:10px;color:var(--muted);margin-top:4px}blockquote{margin:18px 0;padding:12px 0 12px 18px;border-left:2px solid var(--amber);font-size:13px;line-height:1.9;color:#a4bec1}.goal-row{margin:14px 0}.meter{height:4px;background:#263c42}.meter span{display:block;height:100%;background:#bf9039}
.feedback-area{width:min(1250px,calc(100% - 100px));margin:0 auto;min-height:56px;padding-bottom:14px}.feedback{font-size:12px;letter-spacing:.3px;line-height:1.8;color:var(--good)}.feedback.error{color:var(--bad)}.game-footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px max(7.3vw,32px) 32px;border-top:1px solid #2a41465e;background:#03090b29}.save-control,.time-control{display:flex;align-items:center;gap:24px}.save-status,.paused{font-size:9px;letter-spacing:1px;color:#789398}.footer-button{position:relative;display:flex;justify-content:space-between;align-items:center;gap:28px;min-width:220px;min-height:46px;border:0;clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);background:#20303691;padding:8px 32px;font-family:Rajdhani,sans-serif;font-size:23px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase}.footer-button:hover{background:#2f464d;color:#eef5e6}.advance{min-width:245px}.advance span{font-family:ShareTech;font-size:16px;color:#8aabae}.footer-button:before{content:'';position:absolute;top:0;right:16px;height:2px;width:40px;background:#68838570}
.modal-shade{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#02090deb;backdrop-filter:blur(5px);padding:24px}.dialog{width:590px;max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #3b565e;background:#0d1a20;padding:27px 32px 30px;position:relative;box-shadow:0 24px 80px #0008}.dialog:before{content:'';position:absolute;top:0;left:32px;height:3px;width:58px;background:var(--amber)}.dialog-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:2px;color:var(--muted);margin-bottom:20px}.close{border:1px solid var(--line);background:#15262c;font-size:24px;width:36px;height:34px;color:#b2d4d3}.dialog h2{font-family:Rajdhani;font-size:31px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:20px}.dialog>p{font-size:14px;line-height:1.9;color:#b5c9cb}.dialog>.data-row{margin-top:20px;font-size:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.check-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:14px}.check-row input{accent-color:var(--amber);width:17px;height:17px}.system-note{margin:28px 0 0!important;color:var(--dim)!important;font-size:10px!important}.settings-dialog .decision{margin-top:20px}.settings-dialog .action{font-size:12px}.settings-dialog .field{margin-bottom:18px}
@media(min-width:1700px){.game-body{width:1270px;grid-template-columns:300px 296px minmax(0,1fr);gap:56px;padding-top:13.4vh}.game-header{width:1340px}.primary-menu{gap:18px}.menu-button{min-height:54px}.secondary-menu .menu-button{min-height:49px}.game-footer{padding-top:32px;padding-bottom:34px}}
@media(max-width:1240px){.game-body{width:calc(100% - 80px);grid-template-columns:220px 215px minmax(0,1fr);gap:30px;padding-top:10vh}.game-header{width:calc(100% - 80px);padding-top:8vh}.menu-button{font-size:21px;letter-spacing:1.6px;padding-left:27px}.menu-index{left:28px}.secondary-menu .menu-button{font-size:18px;padding-left:22px}.data-row{font-size:13px;gap:12px}.title-group:after{display:none}.save-status,.paused{display:none}.game-footer{padding:24px 40px}.detail-panel{letter-spacing:.4px}}
@media(max-width:1000px){.game-body{grid-template-columns:195px minmax(0,1fr);gap:28px;padding-top:8vh}.primary-menu{grid-column:1;grid-row:1/3}.secondary-menu{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:8px}.secondary-menu .menu-button{font-size:17px;min-height:43px;padding:7px 15px}.detail-panel{grid-column:2}.game-date{white-space:nowrap}.header-right{gap:18px}.game-header h1{font-size:30px}.game-body{padding-bottom:28px}.detail-panel .data-row{font-size:14px}}
@media(max-width:700px){.game-header{width:calc(100% - 36px);padding-top:34px;align-items:flex-start;gap:12px}.game-header h1{font-size:27px;letter-spacing:1.7px;max-width:230px}.eyebrow{font-size:8px;margin-bottom:5px}.header-right{flex-direction:column;gap:7px;align-items:flex-end}.game-date{font-size:9px;padding:6px}.settings-trigger{flex-direction:row;font-size:8px;gap:8px}.settings-trigger span{font-size:22px}.game-body{width:calc(100% - 36px);display:flex;flex-direction:column;gap:26px;padding-top:45px}.primary-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:19px 8px}.menu-button{font-size:15px;letter-spacing:.7px;min-height:44px;padding:7px 10px}.menu-index{left:10px;font-size:8px}.menu-slot:has(.active):after{height:2px;top:-5px;width:25px}.menu-button span{font-size:12px}.secondary-menu{width:100%;grid-template-columns:1fr 1fr;gap:7px}.secondary-menu .menu-button{font-size:17px;min-height:41px}.detail-panel{width:100%;padding-top:1px}.briefing .data-row{font-size:14px;min-height:39px;padding:7px 0}.detail-title{font-size:26px}.decision{margin-top:23px}.note{font-size:12px}.game-footer{padding:19px 18px 25px;gap:14px}.footer-button{min-width:0;font-size:17px;min-height:43px;padding:9px 17px;letter-spacing:.5px;gap:15px}.save-control,.time-control{gap:0}.feedback-area{width:calc(100% - 36px);min-height:34px;padding-bottom:14px}.dialog{padding:23px 21px}.modal-shade{padding:15px}.dialog h2{font-size:27px}.dialog>p{font-size:13px}.dialog-actions .action{font-size:12px;padding:9px 12px}.background-grid{inset:130px 10px 110px}}
@media(max-width:380px){.primary-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.game-header h1{font-size:23px;letter-spacing:1px}.game-date{font-size:8px}.footer-button{font-size:15px;padding:8px 12px}.detail-panel .data-row{font-size:13px}}
@media(min-width:1001px) and (max-height:850px){.game-header{padding-top:7.5vh}.game-body{padding-top:7.5vh;padding-bottom:20px}.primary-menu{gap:13px}.menu-button{min-height:46px;font-size:22px}.secondary-menu .menu-button{min-height:45px;font-size:20px}.briefing .data-row{min-height:38px;padding:7px 0}.briefing .decision{margin-top:22px;padding-top:16px}.briefing>.note{margin-top:18px;margin-bottom:0}.game-footer{padding-top:20px;padding-bottom:22px}.feedback-area{min-height:35px}.footer-button{min-height:43px}}
@media(min-width:1001px) and (min-height:640px){.game-surface{height:100dvh;min-height:0}.game-body{min-height:0;grid-template-rows:minmax(0,1fr)}.detail-panel,.secondary-menu{max-height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3b535b transparent}.detail-panel{padding-right:16px}.game-header,.game-footer,.feedback-area{flex-shrink:0}}
@media(max-width:1000px){.feedback-area:has(.feedback:not(:empty)){position:sticky;bottom:0;z-index:5;background:#071014f5;border-top:1px solid #2d4249;padding:13px 10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.menu-button,.footer-button{font-weight:600}
