@font-face{font-family:Fira;src:url('assets/fonts/FiraSansCondensed-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Fira;src:url('assets/fonts/FiraSansCondensed-Medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Fira;src:url('assets/fonts/FiraSansCondensed-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Fira;src:url('assets/fonts/FiraSansCondensed-BlackItalic.ttf') format('truetype');font-style:italic;font-weight:900;font-display:swap}
@font-face{font-family:JetBrains;src:url('assets/fonts/JetBrainsMono.ttf') format('truetype');font-style:normal;font-weight:100 800;font-display:swap}

:root{color-scheme:dark;--background:#0b1116;--surface:#171f25;--border:#30424f;--text:#f4f6fa;--muted:#b6d2e8;--accent:#2edbee;--warning:#fbc239;--display:Fira,'Arial Narrow',sans-serif;--body:Fira,'Arial Narrow',sans-serif;--u:min(calc(100vw / 1672),1.1962px)}
*{box-sizing:border-box}
html{min-width:0;background:var(--background)}
body{margin:0;min-height:100vh;color:var(--text);font-family:var(--body);font-weight:400;background:radial-gradient(ellipse at 48% 10%,#14202733,transparent 65%),#0b1116;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
button:focus-visible{outline:2px solid #67e5f2;outline-offset:5px}
button:disabled{cursor:default}
.icon-library{position:absolute;width:0;height:0;overflow:hidden}
.icon{display:block;width:calc(32 * var(--u));height:calc(32 * var(--u));flex:none}
.digits{font-family:JetBrains,monospace;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:calc(.3 * var(--u))}
.game-shell{max-width:2000px;margin-inline:auto}
.topbar{height:calc(64 * var(--u));display:flex;align-items:center;border-bottom:calc(2 * var(--u)) solid #2c3e4a;padding:0 calc(25 * var(--u)) 0 calc(30 * var(--u));gap:0;background:linear-gradient(120deg,#182028b3,#11191dc4 60%,#1a242ab3);position:relative;z-index:5}
.wordmark{font-family:var(--display);font-style:italic;font-weight:900;font-size:calc(34 * var(--u));line-height:1;white-space:nowrap;letter-spacing:calc(-.8 * var(--u));margin:0 calc(28 * var(--u)) 0 0;width:calc(280 * var(--u))}
html[lang=ru] .wordmark{font-size:calc(31 * var(--u));width:calc(333 * var(--u));letter-spacing:calc(-1.1 * var(--u));margin-right:calc(8 * var(--u));transform:scaleX(.9);transform-origin:left center;margin-left:0}
.game-day{display:flex;align-items:center;gap:calc(10 * var(--u));height:calc(36 * var(--u));border-left:calc(2 * var(--u)) solid #2c3e4a;padding-left:calc(30 * var(--u));font-size:calc(24 * var(--u));font-weight:500;letter-spacing:calc(1.2 * var(--u));color:var(--muted);white-space:nowrap}
html[lang=ru] .game-day{border-left:0;padding-left:0;margin-left:0}
.game-day .icon{margin-right:calc(3 * var(--u))}
.game-day .digits{font-size:calc(23 * var(--u))}
.cash{margin-left:auto;display:flex;align-items:center;gap:calc(12 * var(--u));font-weight:500;font-size:calc(24 * var(--u));letter-spacing:calc(.7 * var(--u));color:var(--muted);white-space:nowrap;height:calc(34 * var(--u));padding-right:calc(53 * var(--u))}
.cash .icon{color:var(--accent);width:calc(29 * var(--u));height:calc(29 * var(--u))}
.cash strong{color:var(--text);font-weight:500;margin-left:calc(6 * var(--u));font-size:calc(24 * var(--u))}
.utility{position:relative;width:calc(82 * var(--u));height:calc(36 * var(--u));display:grid;place-items:center;border-left:calc(2 * var(--u)) solid #2b3c49;color:var(--muted);transition:color .15s ease}
.utility:hover,.utility[aria-expanded=true]{color:var(--accent)}
.notification-dot{position:absolute;top:calc(2 * var(--u));right:calc(22 * var(--u));width:calc(10 * var(--u));height:calc(10 * var(--u));background:#fc4e50;border-radius:50%;box-shadow:0 0 0 calc(2 * var(--u)) #19252c}
.settings-wrap{position:relative}
.settings{width:calc(62 * var(--u));margin-left:calc(1 * var(--u))}
.language-menu{position:absolute;right:0;top:calc(53 * var(--u));width:240px;background:#19232c;border:1px solid #3c5361;border-radius:8px;padding:16px;box-shadow:0 14px 45px #0009;z-index:10}
.language-menu[hidden]{display:none}
.language-menu p{margin:0 0 12px;color:var(--muted);font-size:16px}
.language-options{display:grid;gap:6px}
.language-options button{padding:10px 12px;background:#11191f;border:1px solid #30424f;border-radius:5px;display:flex;justify-content:space-between;font-size:18px}
.language-options span{font-size:14px;color:var(--muted);align-self:center}
.language-options button[aria-pressed=true]{border-color:var(--accent);background:#193c43;color:var(--accent)}
.language-options button:hover{background:#25343e}
.main-nav{height:calc(79 * var(--u));padding:calc(11 * var(--u)) calc(20 * var(--u)) calc(9 * var(--u));display:grid;grid-template-columns:calc(290 * var(--u)) repeat(4,minmax(0,1fr));gap:calc(16 * var(--u));border-bottom:calc(1.5 * var(--u)) solid #293d49;background:linear-gradient(180deg,#131c22a6,#0e151aa6)}
.nav-item{position:relative;display:flex;align-items:center;justify-content:center;gap:calc(24 * var(--u));font-family:var(--display);font-weight:900;font-style:italic;font-size:calc(25 * var(--u));color:#b7cbe1;border:calc(1.5 * var(--u)) solid transparent;border-radius:calc(8 * var(--u));white-space:nowrap;transition:background .15s,color .15s,border-color .15s}
.nav-item .icon{width:calc(40 * var(--u));height:calc(40 * var(--u))}
.nav-item{justify-content:flex-start}
.nav-item:nth-child(1){padding-left:calc(64 * var(--u));gap:calc(18 * var(--u))}
.nav-item:nth-child(2){padding-left:calc(48 * var(--u))}
.nav-item:nth-child(3){padding-left:calc(65 * var(--u))}
.nav-item:nth-child(4),.nav-item:nth-child(5){padding-left:calc(40 * var(--u))}
.nav-item:not(:last-child):not(.active):after{content:'';position:absolute;right:calc(-9 * var(--u));height:calc(29 * var(--u));width:calc(1.5 * var(--u));background:#485e70}
.nav-item.active{color:var(--accent);border-color:#4de3ef;background:linear-gradient(100deg,#16434b,#1a3a41);box-shadow:inset 0 0 calc(28 * var(--u)) #37cadb0a}
.nav-item:hover{color:#e3f8ff;background:#21333c}
.nav-item.active:hover{background:#1a4c55;color:#51e9f8}
.overview{padding:calc(27 * var(--u)) calc(22 * var(--u)) calc(48 * var(--u))}
.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(22 * var(--u))}
.market-card{position:relative;min-width:0;aspect-ratio:530/588;border:calc(1.5 * var(--u)) solid var(--border);border-radius:calc(12 * var(--u));overflow:hidden;background:radial-gradient(ellipse at 58% 57%,#2530398c,transparent 67%),linear-gradient(135deg,#192128 0%,#161e24 50%,#111a20 100%)}
.card-copy{position:relative;z-index:2;margin:calc(21 * var(--u)) calc(30 * var(--u)) 0;pointer-events:none}
.card-copy h2{font-family:var(--display);font-style:italic;font-weight:900;font-size:calc(78 * var(--u));line-height:1.16;letter-spacing:calc(-2 * var(--u));margin:0 0 calc(1 * var(--u));white-space:nowrap;transform:scaleX(.93);transform-origin:left center;text-shadow:0 calc(2 * var(--u)) 0 #05080b42}
.card-copy p{font-size:calc(26 * var(--u));line-height:1.4;letter-spacing:calc(.1 * var(--u));color:var(--muted);margin:0;white-space:nowrap}
html[lang=ru] .vehicles-card h2{font-size:calc(84 * var(--u));letter-spacing:calc(-2.7 * var(--u));transform:scaleX(.87);line-height:1.08}
html[lang=ru] .property-card h2{font-size:calc(78 * var(--u));letter-spacing:calc(-2.5 * var(--u));transform:scaleX(.88);line-height:1.16}
html[lang=ru] .card-copy p{font-size:calc(24 * var(--u));letter-spacing:calc(-.2 * var(--u))}
.market-art{position:absolute;display:block;overflow:visible;pointer-events:none;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 93%,transparent);mask-composite:intersect}
.goods-art{width:69.057%;height:auto;left:28.1%;top:24.8%;filter:drop-shadow(0 calc(10 * var(--u)) calc(10 * var(--u)) #05090d66)}
.vehicles-art{width:88.302%;height:auto;left:7.36%;top:27.38%;filter:drop-shadow(0 calc(9 * var(--u)) calc(11 * var(--u)) #060c1080)}
.property-art{width:96.605%;height:auto;left:2.83%;top:15.65%}
.market-button{position:absolute;bottom:calc(27 * var(--u));left:calc(29 * var(--u));right:calc(29 * var(--u));height:calc(70 * var(--u));display:flex;align-items:center;justify-content:center;padding:0 calc(64 * var(--u)) 0 calc(24 * var(--u));border:calc(1.5 * var(--u)) solid #7694ac;border-radius:calc(10 * var(--u));font-size:calc(24 * var(--u));font-weight:500;line-height:1.05;white-space:nowrap;letter-spacing:calc(.15 * var(--u));background:linear-gradient(135deg,#1e2933,#17212a);transition:background .15s,border-color .15s,transform .1s}
.market-button .icon{position:absolute;right:calc(37 * var(--u));width:calc(27 * var(--u));height:calc(27 * var(--u))}
.market-button.primary{background:linear-gradient(115deg,#30e0ef,#2ddaea);border-color:#49e8f1;color:#051a24;font-weight:900;font-style:italic;font-family:var(--display);font-size:calc(27 * var(--u))}
.market-button:hover{background:#283c49;border-color:#a5c7dc}
.market-button.primary:hover{background:#6aebf5;border-color:#95f5fa}
.market-button:active,.event:active{transform:translateY(2px)}
.event-strip{display:grid;grid-template-columns:48.1% calc(1.5 * var(--u)) minmax(0,1fr);align-items:center;margin:calc(32 * var(--u)) calc(23 * var(--u)) 0;border:calc(1.5 * var(--u)) solid var(--border);border-radius:calc(10 * var(--u));height:calc(102 * var(--u));background:linear-gradient(120deg,#16212b,#121c23 55%,#142028)}
.event{display:flex;align-items:center;justify-content:center;gap:calc(27 * var(--u));min-width:0;height:100%;color:var(--muted);font-size:calc(27 * var(--u));padding:0 calc(30 * var(--u));transition:background .15s,transform .1s;border-radius:calc(8 * var(--u))}
.event:hover{background:#25384580}
.event-offer{flex:1;justify-content:flex-end;padding-right:calc(120 * var(--u))}
.event-auction{flex:1.05;justify-content:flex-start;padding-left:calc(88 * var(--u))}
html[lang=ru] .event-offer{padding-right:calc(70 * var(--u))}
html[lang=ru] .event-title{font-size:calc(24 * var(--u))}
.event-icon{width:calc(49 * var(--u));height:calc(49 * var(--u));flex:none}
.event-title{white-space:nowrap}
.event .digits{font-size:calc(29 * var(--u));font-weight:600;color:var(--text)}
.event-arrow{width:calc(27 * var(--u));height:calc(27 * var(--u));margin-left:calc(3 * var(--u))}
.event-separator{width:calc(1.5 * var(--u));height:calc(40 * var(--u));flex:none;background:#4b657a}
.auction-icon{position:relative;display:block;width:calc(71 * var(--u));height:calc(53 * var(--u));margin-right:calc(13 * var(--u));flex:none}
.auction-icon .event-icon{width:calc(49 * var(--u));height:calc(49 * var(--u))}
.clock-icon{position:absolute;right:0;bottom:calc(-7 * var(--u));width:calc(33 * var(--u));height:calc(33 * var(--u))}
.countdown,.event .countdown .digits{color:var(--warning);font-weight:600;font-size:calc(29 * var(--u));white-space:nowrap}
.preview-dialog{width:min(400px,calc(100vw - 32px));border:1px solid #466071;border-radius:12px;padding:36px 28px 28px;background:linear-gradient(140deg,#202e39,#142029);color:var(--text);text-align:center;box-shadow:0 20px 80px #0008}
.preview-dialog::backdrop{background:#071018b3;backdrop-filter:blur(4px)}
.dialog-close{position:absolute;top:12px;right:12px;color:var(--muted);padding:4px}
.dialog-close .icon{width:24px;height:24px}
.dialog-icon{width:44px;height:44px;color:var(--accent);margin-bottom:12px}
.preview-dialog h2{font-size:28px;font-weight:900;font-style:italic;margin:0 0 12px;line-height:1.15}
.preview-dialog p{font-size:19px;color:var(--muted);margin:0 0 24px;line-height:1.5}
.dialog-ok{background:var(--accent);color:#071c26;font-size:18px;font-weight:900;font-style:italic;border-radius:6px;padding:12px 28px}
@media(min-width:2001px){.game-shell{padding-top:20px}}
@media(max-width:1050px){
  :root{--u:calc(100vw / 1280)}
  .wordmark{font-size:calc(28 * var(--u));width:calc(240 * var(--u));margin-right:calc(12 * var(--u))}
  html[lang=ru] .wordmark{font-size:calc(23 * var(--u));width:calc(276 * var(--u));margin-right:0}
  .cash{padding-right:calc(25 * var(--u));font-size:calc(21 * var(--u));gap:calc(8 * var(--u))}
  .game-day{padding-left:calc(18 * var(--u));font-size:calc(21 * var(--u))}
  .nav-item{font-size:calc(22 * var(--u));gap:calc(12 * var(--u))}
  .nav-item:nth-child(n){padding-left:0;justify-content:center}
  .nav-item .icon{width:calc(33 * var(--u));height:calc(33 * var(--u))}
  .market-grid{gap:calc(16 * var(--u))}
  .card-copy{margin:calc(16 * var(--u)) calc(19 * var(--u)) 0}
  .card-copy h2{font-size:calc(58 * var(--u));letter-spacing:calc(-1 * var(--u))}
  html[lang=ru] .vehicles-card h2{font-size:calc(49 * var(--u));letter-spacing:calc(-1.8 * var(--u))}
  html[lang=ru] .property-card h2{font-size:calc(45 * var(--u));letter-spacing:calc(-1.7 * var(--u))}
  .card-copy p,html[lang=ru] .card-copy p{font-size:calc(18 * var(--u));line-height:1.45}
  .market-button{bottom:calc(19 * var(--u));left:calc(20 * var(--u));right:calc(20 * var(--u));height:calc(53 * var(--u));font-size:calc(18 * var(--u));padding:0 calc(34 * var(--u)) 0 calc(12 * var(--u))}
  .market-button.primary{font-size:calc(20 * var(--u))}
  .market-button .icon{right:calc(18 * var(--u));width:calc(22 * var(--u));height:calc(22 * var(--u))}
  .event{font-size:calc(22 * var(--u));gap:calc(18 * var(--u));padding:0 calc(22 * var(--u))}
  .event-offer,html[lang=ru] .event-offer,.event-auction{justify-content:center;padding:0 calc(22 * var(--u))}
  html[lang=ru] .event-title{font-size:calc(21 * var(--u))}
  .event .digits,.countdown,.event .countdown .digits{font-size:calc(24 * var(--u))}
  .event-icon{width:calc(40 * var(--u));height:calc(40 * var(--u))}
}
@media(max-width:700px){
  :root{--u:1px}
  .topbar{height:65px;padding:0 12px;flex-wrap:wrap;align-content:center}
  .wordmark,html[lang=ru] .wordmark{font-size:22px;width:auto;margin:0;flex:1;transform:none;letter-spacing:-.5px}
  html[lang=ru] .wordmark{font-size:16px;letter-spacing:-.45px}
  .game-day,html[lang=ru] .game-day{order:4;border:0;padding:0;margin:5px 0 0;height:20px;gap:5px;font-size:15px;letter-spacing:.5px;width:50%}
  .game-day .icon{width:18px;height:18px;margin:0}
  .game-day .digits{font-size:14px}
  .cash{order:5;margin:5px 0 0;height:20px;padding:0;gap:5px;justify-content:flex-end;width:50%;font-size:15px;letter-spacing:0}
  .cash .icon{width:19px;height:19px}
  .cash strong{font-size:15px;margin-left:3px}
  .utility,.settings{height:23px;width:33px;border:0;margin:0}
  .utility .icon{width:22px;height:22px}
  .notification-dot{width:7px;height:7px;top:0;right:6px;box-shadow:0 0 0 1px #17252d}
  .language-menu{top:37px}
  .main-nav{height:69px;gap:5px;padding:6px 8px;grid-template-columns:repeat(5,minmax(0,1fr))}
  .nav-item{flex-direction:column;gap:3px;font-size:11px;white-space:normal;line-height:1.1;border-radius:5px;padding:3px 0;letter-spacing:-.1px}
  .nav-item:nth-child(n){padding:3px 0;justify-content:center;gap:3px}
  .nav-item .icon{width:26px;height:26px}
  .nav-item:not(:last-child):not(.active):after{display:none}
  html[lang=ru] .nav-item{font-size:10px}
  .overview{padding:16px 12px 24px}
  .market-grid{grid-template-columns:1fr;gap:16px;max-width:530px;margin:auto}
  .market-card{aspect-ratio:530/615}
  .card-copy{margin:18px 22px 0}
  .card-copy h2{font-size:clamp(46px,12.5vw,70px);letter-spacing:-1.5px;line-height:1.13}
  html[lang=ru] .vehicles-card h2{font-size:clamp(35px,9.8vw,54px);letter-spacing:-1.5px;transform:scaleX(.9)}
  html[lang=ru] .property-card h2{font-size:clamp(32px,9vw,50px);letter-spacing:-1.3px;transform:scaleX(.9);line-height:1.13}
  .card-copy p,html[lang=ru] .card-copy p{font-size:clamp(14px,3.9vw,22px);line-height:1.45;letter-spacing:0}
  .goods-art{top:24%}
  .vehicles-art{top:26.8%}
  .property-art{top:15.5%}
  .market-button{height:47px;bottom:18px;left:20px;right:20px;padding:0 35px 0 10px;font-size:clamp(15px,4vw,21px);border-radius:7px}
  .market-button.primary{font-size:clamp(17px,4.4vw,23px)}
  .market-button .icon{width:21px;height:21px;right:15px}
  .event-strip{display:flex;max-width:530px;margin:18px auto 0;height:auto;flex-direction:column;padding:4px 0}
  .event{width:100%;height:70px;min-height:70px;flex:initial;gap:12px;padding:10px 16px;font-size:17px;justify-content:flex-start}
  .event-offer,html[lang=ru] .event-offer,.event-auction{padding:10px 16px;justify-content:flex-start}
  html[lang=ru] .event-title{font-size:17px}
  .event-icon{width:33px;height:33px}
  .event-title{white-space:normal;line-height:1.15;flex:1}
  .event .digits,.countdown,.event .countdown .digits{font-size:20px}
  .event-arrow{width:20px;height:20px;margin-left:0}
  .event-separator{width:calc(100% - 32px);height:1px;background:#304454}
  .auction-icon{width:36px;height:33px;margin:0}
  .auction-icon .event-icon{width:30px;height:30px}
  .clock-icon{width:20px;height:20px;bottom:-3px;right:-4px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:350px){.card-copy p,html[lang=ru] .card-copy p{font-size:13px}}
