:root{
  /* Colors sampled from the first screenshot (steel blue/charcoal theme) */
  --bg: #191c1f;
  --bg-2: #303438;
  --bg-3: #0f1215;
  --text: #d9dde1;
  --text-dim: #a5acb3;
  --accent: #7db5d6;
  --accent-2: #c2d7e6;
  --gold: #e7d27a;
  --border: #22272b;
  --chip: #0b0e11;
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1200px 600px at 50% -200px, rgba(125,181,214,.08) 0%, transparent 60%), var(--bg);color:var(--text);font:14px/1.35 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.topbar{background:linear-gradient(180deg,var(--bg-3),transparent),var(--bg-2);border-bottom:1px solid var(--border);padding:0;font-weight:600}
.topbar-inner{width:100%;margin:0;padding:6px max(12px, calc((100vw - 1100px) / 2 + 12px));display:flex;gap:14px;align-items:center;justify-content:flex-start}
.header{display:grid;grid-template-columns:1fr auto 280px;gap:16px;max-width:1100px;margin:8px auto 10px;padding:0 12px}
.playerbar{background:var(--bg-2);border:1px solid var(--border);padding:10px 12px;border-radius:6px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.playerbar strong{color:var(--accent-2)}
.breadcrumbs{font-size:12px;color:var(--text-dim);margin-top:6px}
.stats{background:var(--bg-2);border:1px solid var(--border);padding:10px;border-radius:6px}
.rail{display:grid;grid-template-columns:60px 1fr;gap:10px;align-items:center;margin:6px 0}
.rail label{color:var(--text-dim);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.bar{height:10px;background:#0b0e11;border-radius:10px;overflow:hidden;border:1px solid var(--border)}
.bar>i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.wrap{max-width:1100px;margin:0 auto 40px;padding:0 12px;display:grid;grid-template-columns:220px 1fr;gap:16px}
.nav{background:var(--bg-2);border:1px solid var(--border);border-radius:6px;overflow:hidden}
.nav .title{padding:10px 12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,rgba(125,181,214,.12),transparent);border-bottom:1px solid var(--border)}
.nav ul{list-style:none;margin:0;padding:8px}
.nav a{display:block;padding:8px 10px;border-radius:6px;color:var(--text)}
.nav a:hover{background:#0f1418}
.support-box{background:var(--bg-3);border-top:1px solid var(--border);padding:10px 10px 12px}
.support-box h4{margin:0 0 8px;font-size:12px;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase}
.content{display:grid;gap:16px}
.banner{background:linear-gradient(180deg,rgba(125,181,214,.15),transparent),var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:10px 12px}
.banner h1{margin:0 0 8px;font-size:22px}
.banner .note{color:var(--text-dim);font-size:13px}
.hero{height:180px;margin-top:8px;border-radius:6px;border:1px dashed var(--border);background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.45)),radial-gradient(600px 160px at 60% 30%, rgba(125,181,214,.25), transparent),#0e1216;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-style:italic}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--bg-2);border:1px solid var(--border);border-radius:6px;overflow:hidden}
.card h3{margin:0;padding:10px 12px;font-size:14px;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg,rgba(125,181,214,.10),transparent);border-bottom:1px solid var(--border);color:var(--accent-2)}
.card ul{list-style:none;margin:0;padding:8px 10px 10px}
.card li a{display:inline-block;padding:4px 0}
.strip{background:var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:8px 12px}
.table{width:100%;border-collapse:collapse;margin-top:6px;font-size:13px}
.table th,.table td{padding:6px 8px;border-bottom:1px dashed var(--border);text-align:left}
.table th{color:var(--text-dim);font-weight:600;text-transform:uppercase;font-size:12px}
.pill{display:inline-block;padding:2px 6px;border-radius:999px;background:var(--chip);border:1px solid var(--border);color:var(--text-dim);font-size:12px;margin-left:6px}
.flash{background:#0e1416;border:1px solid var(--border);padding:8px 10px;border-radius:6px}
.btn{display:inline-block;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-3) color: var(--text); color:#fff;}
.form{display:grid;gap:8px;max-width:320px}
.form-row{display:flex;gap:8px;align-items:center}
.gold{color:var(--gold)}
@media (max-width:980px){.header{grid-template-columns:1fr}.wrap{grid-template-columns:1fr}.grid{grid-template-columns:1fr}}

.btn:hover,.btn:focus,.btn:active{color:#fff;}
.btn[disabled],.btn:disabled{color:#fff;opacity:0.7;}

/* Game brand (top-left) */
.topbar .brand{display:inline-block;margin-right:auto;font-size:26px;font-weight:800;color:#fff;letter-spacing:.5px;line-height:1.1}
@media (max-width:640px){.topbar-inner{gap:10px;flex-wrap:wrap;padding-left:12px;padding-right:12px}.topbar .brand{font-size:20px;margin-right:auto}}


/* === UI alignment + visual polish pass === */
:root{
  --panel: #252a30;
  --panel-deep: #171b20;
  --panel-hi: #343a42;
  --button-top: #3f4650;
  --button-bottom: #20252b;
  --button-border: #59616d;
  --button-glow: rgba(125,181,214,.22);
  --danger-top: #8e3030;
  --danger-bottom: #5b1919;
  --success-top: #386d49;
  --success-bottom: #1d3f29;
}
body{
  background:
    radial-gradient(900px 440px at 50% -120px, rgba(139,190,226,.18), transparent 62%),
    linear-gradient(180deg,#20252b 0%, #15191e 46%, #101317 100%);
}
.card,.strip,.banner,.playerbar,.stats,.nav{
  border-radius:12px;
  border:1px solid rgba(153,177,196,.16);
  box-shadow:0 12px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
.card{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.08)),var(--panel);}
.card h1,.banner h1{margin:0 0 12px;font-size:24px;letter-spacing:.02em;color:#eef7ff;text-shadow:0 1px 0 rgba(0,0,0,.55)}
.card h3{background:linear-gradient(180deg,rgba(151,201,235,.16),rgba(0,0,0,.06));}
.flash{border-radius:10px;margin:10px 0;background:linear-gradient(180deg,#14202a,#0f171d);}
.flash.error,.error{border-color:#733;color:#ffd0d0;background:linear-gradient(180deg,#2a1515,#171010)}

/* Neater, properly button-like controls */
.btn, button, input[type="submit"], input[type="button"]{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 13px;
  border-radius:9px;
  border:1px solid var(--button-border);
  background:linear-gradient(180deg,var(--button-top),var(--button-bottom));
  color:#f4f8fb !important;
  font-weight:700;
  line-height:1.1;
  text-align:center;
  text-decoration:none !important;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13), 0 3px 0 rgba(0,0,0,.35), 0 8px 15px rgba(0,0,0,.16);
  transition:transform .12s ease, filter .12s ease, box-shadow .12s ease, border-color .12s ease;
  white-space:nowrap;
}
.btn:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover{
  filter:brightness(1.12);
  transform:translateY(-1px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18), 0 4px 0 rgba(0,0,0,.35), 0 0 0 3px var(--button-glow), 0 12px 18px rgba(0,0,0,.2);
}
.btn:active, button:active, input[type="submit"]:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(0,0,0,.38), 0 1px 0 rgba(0,0,0,.45)}
.btn-primary{background:linear-gradient(180deg,#d6b85a,#6d5520);border-color:#e9d37a;color:#050403 !important;text-shadow:0 1px 0 rgba(255,255,255,.25)}
.btn-danger{background:linear-gradient(180deg,var(--danger-top),var(--danger-bottom));border-color:#b55252;color:#fff !important}
.btn-contrast{background:linear-gradient(180deg,#6c83a0,#334457);border-color:#86a7c6;color:#fff !important}
.btn-outline{background:linear-gradient(180deg,#2a3037,#171b20);border-color:#4a5562;color:#dcecff !important}
.btn[disabled],.btn:disabled,button[disabled],button:disabled{opacity:.52;cursor:not-allowed;transform:none;filter:saturate(.7)}

input,select,textarea{
  background:#101419;
  border:1px solid #3c444e;
  color:#eef3f7;
  border-radius:8px;
  padding:8px 10px;
  min-height:34px;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.35);
}
input[type="number"]{text-align:center;}
label{color:#b9c8d4;font-weight:650;font-size:12px;text-transform:uppercase;letter-spacing:.04em}

/* Reusable aligned lists for shop/gym/action pages */
.action-list{display:grid;gap:10px;margin:12px 0;}
.action-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid rgba(153,177,196,.14);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.08)),#1b2026;
}
.action-row:hover{background:linear-gradient(180deg,rgba(125,181,214,.07),rgba(0,0,0,.08)),#20262d;}
.action-title{font-weight:800;color:#eef7ff;margin-bottom:3px;}
.action-meta{color:var(--text-dim);font-size:12px;}
.action-controls{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.action-controls .btn,.action-controls button{min-width:140px;}
.action-controls input[type="number"]{width:76px;}

.table{border-collapse:separate;border-spacing:0 7px;margin-top:10px;}
.table th{border-bottom:0;padding:4px 10px;color:#b6c3cf;}
.table td{background:rgba(15,18,21,.42);border-top:1px solid rgba(153,177,196,.10);border-bottom:1px solid rgba(153,177,196,.10);padding:10px;vertical-align:middle;}
.table td:first-child{border-left:1px solid rgba(153,177,196,.10);border-radius:9px 0 0 9px;}
.table td:last-child{border-right:1px solid rgba(153,177,196,.10);border-radius:0 9px 9px 0;}
.table form.form-row,.shop-buy-form{display:flex !important;align-items:center;justify-content:flex-end;gap:8px;min-width:170px;}
.table form.form-row input[type="number"],.shop-buy-form input[type="number"]{width:72px;max-width:72px;}
.table form.form-row .btn,.shop-buy-form .btn,.shop-buy-form button{min-width:74px;}
.actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.form-row{align-items:center;}

/* City skyline: brighter and more pleasing without changing the SVG code */
.hero{
  border-style:solid;
  border-radius:14px;
  background:
    linear-gradient(180deg,rgba(111,176,219,.18),rgba(5,8,12,.55)),
    radial-gradient(500px 190px at 60% 8%,rgba(255,207,112,.13),transparent 58%),
    #10161d;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 12px 28px rgba(0,0,0,.28);
  overflow:hidden;
}
.hero svg{filter:brightness(1.3) contrast(1.14) saturate(1.18) drop-shadow(0 8px 14px rgba(0,0,0,.52)) !important;}
.city-ticker{box-shadow:0 8px 18px rgba(0,0,0,.24);}

@media (max-width:720px){
  .action-row{grid-template-columns:1fr;}
  .action-controls{justify-content:stretch;}
  .action-controls .btn,.action-controls button{width:100%;}
  .table form.form-row,.shop-buy-form{justify-content:flex-start;}
  .table{font-size:12px;}
}
.crime-intro{
  margin:10px 0 18px;
  padding:11px 14px;
  border:1px solid rgba(153,177,196,.16);
  border-left:4px solid #d6b85a;
  border-radius:10px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10)),#171c22;
  color:#d7e1ea;
  font-size:13px;
  line-height:1.45;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}


.market-intro{
  margin:10px 0 18px;
  padding:11px 14px;
  border:1px solid rgba(153,177,196,.16);
  border-left:4px solid #d6b85a;
  border-radius:10px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10)),#171c22;
  color:#d7e1ea;
  font-size:13px;
  line-height:1.45;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

/* Items market tabs + table-style listings */
.market-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 14px;
}
.market-tab{
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border:1px solid rgba(214,184,90,.22);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.16)),#111820;
  color:#d7e1ea;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.market-tab:hover,
.market-tab.is-active{
  border-color:rgba(214,184,90,.62);
  color:#fff3c4;
  background:linear-gradient(180deg,rgba(214,184,90,.18),rgba(0,0,0,.16)),#151b22;
}
.market-tab em{
  min-width:22px;
  padding:2px 7px;
  border-radius:999px;
  background:rgba(0,0,0,.32);
  color:#d6b85a;
  font-style:normal;
  font-size:12px;
  text-align:center;
}
.market-table-card{padding:0;overflow:hidden;}
.market-table-head,
.market-table-row{
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) minmax(120px,.55fr) minmax(180px,.85fr) minmax(160px,.55fr);
  align-items:center;
}
.market-table-head{
  padding:13px 14px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(0,0,0,.10)),#111820;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#d6b85a;
  font-weight:900;
  letter-spacing:.2px;
}
.market-table-row{
  min-height:72px;
  padding:10px 14px;
  border-bottom:1px solid rgba(255,255,255,.065);
  background:rgba(255,255,255,.018);
  transition:background .12s ease, transform .12s ease;
}
.market-table-row:hover{background:rgba(214,184,90,.055);}
.market-table-row:last-child{border-bottom:0;}
.market-cell{min-width:0;}
.market-cell-item{
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  align-items:center;
  gap:12px;
}
.market-icon-frame{
  width:48px !important;
  height:48px !important;
  max-width:48px !important;
  max-height:48px !important;
  overflow:hidden;
  flex:0 0 48px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at 50% 25%,#283241,#0b1016 72%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.market-item-icon{
  width:42px !important;
  height:42px !important;
  max-width:42px !important;
  max-height:42px !important;
  object-fit:contain !important;
  display:block !important;
  filter:drop-shadow(0 5px 6px rgba(0,0,0,.45));
}
.market-item-icon--missing{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#8c96a3;
  font-weight:700;
}
.market-item-copy{min-width:0;}
.market-item-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f5f7fb;}
.market-cell-price{font-weight:900;color:#f5f7fb;}
.market-seller{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  color:#d7e1ea;
  text-decoration:none;
  font-weight:800;
}
.market-seller:hover{color:#fff3c4;}
.market-seller img{
  width:40px;
  height:40px;
  border-radius:8px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.12);
  background:#080b10;
  flex:0 0 40px;
}
.market-seller span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.market-cell-actions{display:flex;justify-content:flex-end;}
.market-buy-form,.market-remove-form{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  margin:0;
}
.market-buy-form input[type="number"]{width:66px;min-width:66px;}
.market-empty{padding:18px 14px;}
@media (max-width:850px){
  .market-table-head{display:none;}
  .market-table-row{
    grid-template-columns:1fr;
    gap:10px;
    align-items:flex-start;
  }
  .market-cell-price::before{content:'Cost: ';color:var(--muted,#9ca3af);font-weight:700;}
  .market-cell-seller::before{content:'Seller';display:block;color:var(--muted,#9ca3af);font-size:12px;margin-bottom:4px;}
  .market-cell-actions{justify-content:flex-start;width:100%;}
}



/* === Items Market proper table layout fix === */
.items-market-card{padding:0;overflow:hidden;background:var(--bg-2);}
.items-market-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;}
.items-market-table th{padding:12px 14px;text-align:left;color:var(--gold);font-weight:900;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.10)),var(--panel-deep);}
.items-market-table td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle;background:rgba(255,255,255,.015);}
.items-market-table tr:last-child td{border-bottom:0;}
.items-market-table tbody tr:hover td{background:rgba(125,181,214,.055);}
.im-col-item{width:44%;}.im-col-cost{width:18%;}.im-col-seller{width:25%;}.im-col-actions{width:13%;text-align:right!important;}
.im-item-cell{display:flex;align-items:center;gap:12px;min-width:0;}
.im-icon-frame{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;max-height:46px!important;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 50% 25%,#283241,#0b1016 72%);border:1px solid rgba(255,255,255,.08);}
.im-icon-frame .market-item-icon{width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;object-fit:contain!important;display:block!important;}
.im-item-text{display:block;min-width:0;line-height:1.25;}
.im-item-text strong{display:block;color:#fff;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.im-item-text small{display:block;color:var(--text-dim);font-size:12px;margin-top:2px;}
.im-cost-cell{font-weight:900;color:#fff;font-size:15px;white-space:nowrap;}
.im-seller{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:var(--text);font-weight:800;}
.im-seller:hover{color:var(--accent-2);text-decoration:none;}
.im-seller img{width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;max-height:38px!important;object-fit:cover!important;display:block!important;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:#080b10;}
.im-seller span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.im-actions-cell{text-align:right;white-space:nowrap;}
.im-action-form{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;margin:0;}
.im-buy-form input[type="number"]{width:58px;min-width:58px;padding:4px 6px;}
.items-market-empty{padding:18px 14px!important;text-align:center;}
@media (max-width:640px){
  .items-market-table,.items-market-table thead,.items-market-table tbody,.items-market-table tr,.items-market-table th,.items-market-table td{display:block;width:100%;}
  .items-market-table thead{display:none;}
  .items-market-table tr{border-bottom:1px solid var(--border);padding:10px 12px;}
  .items-market-table td{border:0!important;padding:6px 0!important;background:transparent!important;}
  .im-item-cell{display:flex!important;}
  .im-cost-cell:before{content:'Cost: ';color:var(--text-dim);font-weight:700;}
  .im-actions-cell{text-align:left;}
}

/* Weapons / Armour shop item thumbnails */
.shop-hero{margin:10px 0 16px;}
.shop-item-cell{display:flex;align-items:center;gap:12px;min-width:0;}
.shop-icon-frame{width:52px;height:52px;min-width:52px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;background:radial-gradient(circle at 50% 25%,#283241,#0b1016 72%);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.shop-item-icon{width:46px!important;height:46px!important;max-width:46px!important;max-height:46px!important;object-fit:contain!important;display:block!important;filter:drop-shadow(0 5px 6px rgba(0,0,0,.45));}
.shop-item-icon--missing{display:flex;align-items:center;justify-content:center;color:#8c96a3;font-weight:800;}
.shop-item-copy{display:block;min-width:0;}
.shop-item-copy strong{display:block;color:#f5f7fb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media (max-width:640px){.shop-icon-frame{width:46px;height:46px;min-width:46px}.shop-item-icon{width:40px!important;height:40px!important;}}


/* Shop SVG hero fixes */
.shop-hero{height:180px;padding:0;align-items:stretch;justify-content:stretch;}
.shop-hero .shop-art-svg{display:block;width:100%;height:100%;min-width:100%;min-height:100%;}

/* Point shop polish */
.point-shop-hero{margin:10px 0 16px;height:180px;padding:0;align-items:stretch;justify-content:stretch;}
.point-shop-hero svg{display:block;width:100%;height:100%;min-width:100%;min-height:100%;}
.point-shop-wallet{
  display:grid;
  grid-template-columns:minmax(180px,260px) 1fr;
  gap:12px;
  margin:12px 0 14px;
  padding:12px;
  border:1px solid rgba(153,177,196,.16);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.10)),#171c22;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.point-wallet-main{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:74px;
  padding:12px 14px;
  border-radius:12px;
  background:radial-gradient(circle at 18% 18%,rgba(250,204,21,.22),transparent 48%),#0d1218;
  border:1px solid rgba(250,204,21,.18);
}
.point-wallet-label{color:var(--text-dim);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;}
.point-wallet-main strong{font-size:32px;line-height:1;color:var(--gold);text-shadow:0 2px 10px rgba(0,0,0,.45);}
.point-wallet-extra{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.point-wallet-extra span{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;background:#0c1117;border:1px solid rgba(153,177,196,.13);color:#c9d3dc;font-weight:700;}
.point-wallet-extra strong{color:#fff;}
.point-shop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;}
.point-shop-card{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:10px 12px;
  padding:14px;
  border:1px solid rgba(153,177,196,.15);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.10)),#1b2026;
  box-shadow:0 10px 22px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.04);
}
.point-shop-card:hover{background:linear-gradient(180deg,rgba(125,181,214,.08),rgba(0,0,0,.10)),#20262d;}
.point-shop-icon{
  grid-row:1 / span 2;
  width:56px;height:56px;
  display:flex;align-items:center;justify-content:center;
  border-radius:14px;
  background:radial-gradient(circle at 50% 25%,rgba(250,204,21,.24),transparent 58%),#0b1016;
  border:1px solid rgba(255,255,255,.10);
  font-size:28px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 14px rgba(0,0,0,.20);
}
.point-shop-copy{min-width:0;}
.point-shop-kicker{color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:900;margin-bottom:2px;}
.point-shop-card h3{margin:0 0 4px;padding:0;background:none;border:0;font-size:17px;letter-spacing:0;text-transform:none;color:#f5f7fb;}
.point-shop-card p{margin:0;color:var(--text-dim);font-size:13px;line-height:1.35;}
.point-shop-buyline{
  grid-column:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:4px;
  border-top:1px dashed rgba(153,177,196,.14);
}
.point-shop-buyline strong{color:var(--gold);font-size:14px;}
.point-shop-buyline .btn{min-width:88px;}
@media (max-width:760px){
  .point-shop-wallet{grid-template-columns:1fr;}
  .point-shop-grid{grid-template-columns:1fr;}
}
@media (max-width:420px){
  .point-shop-card{grid-template-columns:46px minmax(0,1fr);padding:12px;}
  .point-shop-icon{width:46px;height:46px;font-size:23px;}
  .point-shop-buyline{grid-column:1 / -1;}
}

/* 50/50 Chance polish */
.fifty-hero{height:180px;padding:0;align-items:stretch;justify-content:stretch;margin-bottom:12px;}
.fifty-hero svg{display:block;width:100%;height:100%;min-width:100%;min-height:100%;}
.fifty-overview{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  margin:10px 0 14px;
  padding:14px;
  border:1px solid rgba(153,177,196,.16);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.12)),#171c22;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 22px rgba(0,0,0,.16);
}
.fifty-overview p{margin:2px 0 0;color:#d5dee7;line-height:1.45;}
.fifty-kicker{color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;}
.fifty-wallet{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.fifty-wallet span{min-width:120px;padding:10px 12px;border-radius:12px;background:#0c1117;border:1px solid rgba(153,177,196,.14);}
.fifty-wallet small{display:block;color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:2px;}
.fifty-wallet strong{display:block;color:#fff;font-size:18px;line-height:1.1;}
.fifty-bet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0;}
.fifty-bet-card{overflow:hidden;}
.fifty-bet-card h3{font-size:13px;}
.fifty-bet-form{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;padding:14px;align-items:center;}
.fifty-bet-icon{
  grid-row:1 / span 2;
  width:58px;height:58px;
  display:flex;align-items:center;justify-content:center;
  border-radius:999px;
  font-size:28px;font-weight:950;
  color:#111;
  background:radial-gradient(circle at 35% 25%,#fff4b8,#d6a740 52%,#7d5517 100%);
  border:1px solid rgba(255,230,148,.50);
  box-shadow:inset 0 2px 2px rgba(255,255,255,.35),0 8px 18px rgba(0,0,0,.28);
}
.fifty-points-card .fifty-bet-icon{color:#eaf6ff;background:radial-gradient(circle at 35% 25%,#9fd7ff,#386d90 56%,#152633 100%);border-color:rgba(159,215,255,.44);}
.fifty-bet-copy{min-width:0;}
.fifty-bet-copy input{width:100%;margin-top:6px;font-size:16px;font-weight:800;text-align:left;}
.fifty-bet-form button{grid-column:2;min-height:42px;width:100%;font-size:13px;}
.fifty-open-card{margin-top:14px;}
.fifty-table th:last-child,.fifty-table td:last-child{text-align:right;}
.fifty-stake-chip{display:inline-flex;align-items:center;justify-content:center;min-width:70px;padding:4px 8px;border-radius:999px;background:#0c1117;border:1px solid rgba(153,177,196,.16);color:#cdd7e0;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;}
.fifty-amount{font-weight:950;color:var(--gold);white-space:nowrap;}
.fifty-action-form{display:inline-flex;margin:0;justify-content:flex-end;}
.fifty-action .btn{min-width:104px;}
.fifty-empty{padding:22px 14px;text-align:center;color:var(--text-dim);}
.fifty-empty strong{display:block;color:#f5f7fb;font-size:17px;margin-bottom:4px;}
.fifty-empty span{display:block;}
@media (max-width:760px){
  .fifty-overview{grid-template-columns:1fr;}
  .fifty-wallet{justify-content:flex-start;}
  .fifty-bet-grid{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .fifty-bet-form{grid-template-columns:48px minmax(0,1fr);}
  .fifty-bet-icon{width:48px;height:48px;font-size:23px;}
  .fifty-bet-form button{grid-column:1 / -1;}
}


/* Header quick links: Mailbox / Events / Bank panel */
.playerbar{
  grid-template-columns:minmax(280px,1fr) minmax(220px,300px) minmax(190px,auto);
  gap:18px;
  align-items:center;
}
.header-quicklinks{
  justify-self:center;
  width:min(100%,300px);
  border:1px solid rgba(153,177,196,.18);
  border-radius:10px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.09)),rgba(22,27,32,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.18);
}
.header-quicklink{
  display:grid;
  grid-template-columns:30px 1fr auto;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:8px 14px;
  color:#e7eef5;
  text-decoration:none !important;
  font-weight:750;
  border-bottom:1px solid rgba(153,177,196,.12);
}
.header-quicklink:last-child{border-bottom:0;}
.header-quicklink:hover{
  background:rgba(125,181,214,.10);
  color:#fff;
}
.header-quicklink strong{color:var(--accent-2);font-weight:850;}
.quick-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:4px;
  background:#e8e8dc;
  color:#0b0e11;
  border:1px solid rgba(0,0,0,.55);
  box-shadow:0 2px 0 rgba(0,0,0,.45);
  font-size:16px;
  line-height:1;
}
.header-resources{
  justify-self:end;
  display:grid;
  gap:8px;
  text-align:left;
  font-size:16px;
  font-weight:700;
  white-space:nowrap;
}
.header-resources .gold{font-size:18px;}
@media (max-width:980px){
  .playerbar{grid-template-columns:1fr;}
  .header-quicklinks{justify-self:stretch;width:100%;}
  .header-resources{justify-self:start;}
}

/* Mailbox layout: conversations, thread and larger compose panels */
.mailbox-shell{
  display:grid;
  grid-template-columns:minmax(270px,340px) minmax(0,1fr);
  gap:18px;
  align-items:start;
}
.mailbox-card{
  overflow:hidden;
  border-radius:16px;
}
.mailbox-card h3{
  position:relative;
  letter-spacing:.08em;
}
.mailbox-note{
  color:var(--text-dim);
  font-size:13px;
  line-height:1.45;
  padding:12px 14px 0;
}
.mailbox-empty{
  margin:12px;
  padding:14px;
  border:1px dashed rgba(153,177,196,.18);
  border-radius:10px;
  color:var(--text-dim);
  background:rgba(0,0,0,.12);
  text-align:center;
}
.mailbox-conv-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:12px;
}
.mailbox-conv{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px;
  border:1px solid rgba(153,177,196,.14);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10)),#171c22;
  color:var(--text);
  text-decoration:none!important;
  min-width:0;
}
.mailbox-conv:hover,.mailbox-conv.is-active{
  border-color:rgba(125,181,214,.45);
  background:linear-gradient(180deg,rgba(125,181,214,.12),rgba(0,0,0,.10)),#1d242c;
}
.mailbox-conv-main{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.mailbox-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:radial-gradient(circle at 35% 25%,#7db5d6,#25475c 62%,#111820 100%);
  border:1px solid rgba(125,181,214,.34);
  color:#f3f9ff;
  font-weight:950;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 7px 14px rgba(0,0,0,.22);
}

.mailbox-avatar.has-image{
  padding:0;
  overflow:hidden;
  background:#10151b;
}
.mailbox-avatar img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.mailbox-avatar-title{
  width:38px;
  height:38px;
  flex:0 0 38px;
}
.mailbox-avatar-mini{
  width:24px;
  height:24px;
  flex:0 0 24px;
  border-radius:8px;
  font-size:12px;
}
.mailbox-thread-title{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.mailbox-message-author{
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.mailbox-conv-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.mailbox-conv-name{
  font-weight:900;
  color:#eef7ff;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mailbox-conv-name em{
  font-style:normal;
  color:var(--accent);
  font-weight:950;
}
.mailbox-conv-time{
  font-size:11px;
  color:var(--text-dim);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.mailbox-thread-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:0 12px 10px;
}
.mailbox-thread-top .mailbox-note{padding:10px 0 0;}
.mailbox-thread-tools{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  padding-top:10px;
}
.mailbox-thread-tools form{margin:0;}
.mailbox-thread{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:58vh;
  overflow:auto;
  margin:0 14px;
  padding:12px;
  border:1px solid rgba(153,177,196,.16);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.10)),#101419;
}
.mailbox-message{
  max-width:88%;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(153,177,196,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.08)),#1b2026;
  box-shadow:0 8px 18px rgba(0,0,0,.16);
}
.mailbox-message.mine{
  align-self:flex-end;
  background:linear-gradient(180deg,rgba(125,181,214,.12),rgba(0,0,0,.08)),#182533;
  border-color:rgba(125,181,214,.24);
}
.mailbox-message.theirs{align-self:flex-start;}
.mailbox-message-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:5px;
}
.mailbox-message-head strong{color:#eef7ff;}
.mailbox-message-head span{
  color:var(--text-dim);
  font-size:11px;
  white-space:nowrap;
}
.mailbox-message-body{
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  color:#dce5ed;
  line-height:1.42;
}
.mailbox-compose{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:14px;
  padding:14px;
  border:1px solid rgba(153,177,196,.14);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10)),#151a20;
}
.mailbox-compose textarea{
  width:100%;
  min-height:180px;
  resize:vertical;
  line-height:1.5;
  padding:14px;
  border-radius:12px;
}
.mailbox-compose textarea:focus{
  outline:none;
  border-color:rgba(125,181,214,.55);
  box-shadow:0 0 0 3px rgba(125,181,214,.14);
}
.mailbox-compose .actions{
  display:flex;
  justify-content:flex-end;
}
.mailbox-compose-new{
  max-width:none;
}
.mailbox-compose-new .field{
  max-width:680px;
}

.mail-emote-picker{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  padding:8px;
  border:1px solid rgba(153,177,196,.12);
  border-radius:12px;
  background:rgba(0,0,0,.12);
}
.mail-emote-btn{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:7px 8px;
  border-radius:10px;
  border:1px solid rgba(153,177,196,.18);
  background:#10151b;
  color:var(--text);
  cursor:pointer;
}
.mail-emote-btn:hover{
  border-color:rgba(125,181,214,.42);
  background:#18222b;
}
.mail-emote-btn small{color:var(--text-dim);font-size:10px;}
.mail-emote{font-size:1.15em;}

@media (max-width:820px){
  .mailbox-shell{grid-template-columns:1fr;}
  .mailbox-message{max-width:96%;}
  .mailbox-compose{margin:12px 8px;padding:12px;}
  .mailbox-compose textarea{min-height:220px;}
  .mailbox-thread-top{align-items:flex-start;flex-direction:column;}
  .mailbox-thread-tools{justify-content:flex-start;}
}

/* Sidebar link colour restore: keep left menu links matching normal city-page links */
.nav a,
.nav a:visited{
  color:var(--accent);
}
.nav a:hover,
.nav a:focus{
  color:var(--accent-2);
  background:#0f1418;
  text-decoration:none;
}


/* Point Shop compact layout: same design, less vertical space */
.point-shop-hero{
  height:96px !important;
  min-height:96px !important;
  margin:6px 0 8px !important;
  padding:0 !important;
}
.point-shop-hero svg{
  height:96px !important;
  min-height:96px !important;
}
body .market-intro + .flash,
body .market-intro + .flash.error{
  margin-top:6px;
}
.point-shop-wallet{
  min-height:0 !important;
  padding:7px 9px !important;
  margin:6px 0 8px !important;
  gap:8px !important;
  grid-template-columns:minmax(135px,180px) minmax(0,1fr) !important;
  align-items:center !important;
}
.point-wallet-label{
  font-size:10px !important;
  line-height:1.05 !important;
}
.point-wallet-main strong{
  font-size:23px !important;
  line-height:1 !important;
}
.point-wallet-extra{
  gap:6px !important;
}
.point-wallet-extra span{
  padding:4px 7px !important;
  font-size:11px !important;
  line-height:1.15 !important;
}
.point-shop-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:7px !important;
  margin:8px 0 !important;
}
.point-shop-card{
  grid-template-columns:38px minmax(0,1fr) !important;
  gap:5px 7px !important;
  padding:8px !important;
  border-radius:10px !important;
}
.point-shop-icon{
  width:38px !important;
  height:38px !important;
  border-radius:10px !important;
  font-size:20px !important;
}
.point-shop-kicker{
  font-size:9px !important;
  line-height:1.05 !important;
  margin-bottom:1px !important;
}
.point-shop-card h3{
  font-size:13px !important;
  line-height:1.1 !important;
  margin:0 0 2px !important;
}
.point-shop-card p{
  font-size:11px !important;
  line-height:1.18 !important;
}
.point-shop-buyline{
  grid-column:2 !important;
  padding-top:4px !important;
  gap:6px !important;
}
.point-shop-buyline strong{
  font-size:12px !important;
  line-height:1.1 !important;
}
.point-shop-buyline .btn{
  min-width:54px !important;
  min-height:25px !important;
  padding:4px 8px !important;
  font-size:12px !important;
  line-height:1.05 !important;
}
@media (max-width:980px){
  .point-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:760px){
  .point-shop-wallet{grid-template-columns:1fr !important;}
  .point-shop-grid{grid-template-columns:1fr !important;}
  .point-shop-card{grid-template-columns:38px minmax(0,1fr) !important;}
  .point-shop-buyline{grid-column:1 / -1 !important;}
}

/* Point Shop layout refresh: roomier cards, clearer wallet, no cramped 3-column shop grid */
.point-shop-hero{
  height:150px !important;
  min-height:150px !important;
  margin:10px 0 14px !important;
  padding:0 !important;
  overflow:hidden !important;
}
.point-shop-hero svg{
  height:150px !important;
  min-height:150px !important;
}
.market-intro{
  margin:10px 0 14px !important;
  padding:12px 14px !important;
  border:1px solid rgba(125,181,214,.14) !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,rgba(125,181,214,.06),rgba(0,0,0,.10)),#151b21 !important;
  color:#cbd5df !important;
  line-height:1.45 !important;
}
.point-shop-wallet{
  display:grid !important;
  grid-template-columns:minmax(190px,260px) minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:12px !important;
  margin:12px 0 16px !important;
  padding:12px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.12)),#171d23 !important;
  border:1px solid rgba(153,177,196,.16) !important;
}
.point-wallet-main{
  min-height:82px !important;
  padding:14px 16px !important;
  border-radius:13px !important;
}
.point-wallet-label{
  font-size:12px !important;
  line-height:1.2 !important;
}
.point-wallet-main strong{
  font-size:34px !important;
  line-height:1 !important;
}
.point-wallet-extra{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  align-content:center !important;
}
.point-wallet-extra span{
  justify-content:space-between !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  font-size:13px !important;
  line-height:1.25 !important;
  background:#0f151b !important;
}
.point-shop-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(280px,1fr)) !important;
  gap:14px !important;
  margin:16px 0 12px !important;
}
.point-shop-card{
  display:grid !important;
  grid-template-columns:58px minmax(0,1fr) auto !important;
  grid-template-rows:auto !important;
  align-items:center !important;
  gap:14px !important;
  min-height:104px !important;
  padding:15px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.13)),#1b2128 !important;
  border:1px solid rgba(153,177,196,.16) !important;
  box-shadow:0 10px 22px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.045) !important;
}
.point-shop-card:hover{
  background:linear-gradient(180deg,rgba(125,181,214,.085),rgba(0,0,0,.12)),#20262e !important;
}
.point-shop-icon{
  grid-row:auto !important;
  width:58px !important;
  height:58px !important;
  border-radius:15px !important;
  font-size:29px !important;
}
.point-shop-copy{
  min-width:0 !important;
}
.point-shop-kicker{
  font-size:11px !important;
  line-height:1.2 !important;
  margin-bottom:4px !important;
}
.point-shop-card h3{
  font-size:18px !important;
  line-height:1.15 !important;
  margin:0 0 5px !important;
}
.point-shop-card p{
  font-size:13px !important;
  line-height:1.4 !important;
  margin:0 !important;
}
.point-shop-buyline{
  grid-column:auto !important;
  align-self:stretch !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-end !important;
  gap:9px !important;
  min-width:112px !important;
  padding:0 0 0 14px !important;
  border-top:0 !important;
  border-left:1px dashed rgba(153,177,196,.16) !important;
}
.point-shop-buyline strong{
  font-size:15px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
.point-shop-buyline .btn{
  min-width:90px !important;
  min-height:34px !important;
  padding:7px 13px !important;
  font-size:13px !important;
  line-height:1.1 !important;
}
@media (max-width:980px){
  .point-shop-grid{grid-template-columns:1fr !important;}
}
@media (max-width:760px){
  .point-shop-hero,.point-shop-hero svg{height:120px !important;min-height:120px !important;}
  .point-shop-wallet{grid-template-columns:1fr !important;}
  .point-wallet-extra{grid-template-columns:1fr !important;}
}
@media (max-width:520px){
  .point-shop-card{
    grid-template-columns:50px minmax(0,1fr) !important;
    min-height:0 !important;
    padding:13px !important;
  }
  .point-shop-icon{width:50px !important;height:50px !important;font-size:25px !important;}
  .point-shop-buyline{
    grid-column:1 / -1 !important;
    flex-direction:row !important;
    justify-content:space-between !important;
    align-items:center !important;
    min-width:0 !important;
    padding:10px 0 0 !important;
    border-left:0 !important;
    border-top:1px dashed rgba(153,177,196,.16) !important;
  }
}


/* === MafiaEmpire1925 hard-noir visual identity: structural override, not sepia === */
:root{
  --bg:#050608!important;
  --bg-2:#0c0e12!important;
  --bg-3:#030405!important;
  --panel:#101217!important;
  --panel-deep:#08090c!important;
  --panel-hi:#191c23!important;
  --text:#ece8dc!important;
  --text-dim:#aaa79d!important;
  --accent:#c9a84b!important;
  --accent-2:#f1d779!important;
  --gold:#f1d779!important;
  --border:#343640!important;
  --chip:#090a0d!important;
  --button-top:#1b1d23!important;
  --button-bottom:#08090c!important;
  --button-border:#5c5236!important;
  --button-glow:rgba(241,215,121,.18)!important;
}
html,body{background:#050608!important;color:var(--text)!important;}
body{
  background:
    radial-gradient(900px 420px at 50% -180px, rgba(255,255,255,.08), transparent 62%),
    radial-gradient(700px 380px at 82% 16%, rgba(201,168,75,.055), transparent 70%),
    linear-gradient(180deg,#08090c 0%,#050608 46%,#020203 100%)!important;
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px),radial-gradient(circle at 50% 18%,transparent 0 34%,rgba(0,0,0,.42) 78%,rgba(0,0,0,.72) 100%);mix-blend-mode:screen;opacity:.42;}
a{color:#e4c86b!important}.topbar{background:linear-gradient(180deg,#11141a,#050608)!important;border-bottom:1px solid #37333a!important;box-shadow:0 8px 28px rgba(0,0,0,.55)!important}.topbar .brand{color:#f5dd83!important;text-shadow:0 2px 0 #000,0 0 18px rgba(241,215,121,.12)!important;letter-spacing:.03em!important}
.playerbar,.stats,.nav,.card,.strip,.banner,.login-shell,.market-intro,.crime-intro,.shop-hero,.point-shop-hero{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.18)),#101217!important;border:1px solid #30333d!important;box-shadow:0 18px 40px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.045)!important;color:var(--text)!important}
.card h1,.banner h1,.card h3,.login-box h2,.login-feed-head h2{color:#f4ecd5!important;text-shadow:0 2px 0 #000!important}.card h3,.nav .title,.login-feed-head{background:linear-gradient(180deg,rgba(241,215,121,.10),rgba(0,0,0,.12))!important;border-bottom:1px solid #343640!important;color:#f1d779!important}.nav a{color:#e9e2ce!important;background:transparent!important;border:1px solid transparent!important}.nav a:hover,.nav a:focus{background:linear-gradient(180deg,rgba(241,215,121,.08),rgba(255,255,255,.02))!important;border-color:rgba(241,215,121,.22)!important;text-decoration:none!important}.support-box{background:#08090c!important;border-top:1px solid #30333d!important}
.table td,.action-row,.login-feed-item,.login-metric,.header-quicklink,.header-resources>div{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.16)),#0b0d11!important;border-color:#30333d!important;color:#e9e2ce!important}.table th,.note,.sub,.breadcrumbs,.action-meta,.login-feed-count,.login-links,.login-trust li{color:#aaa79d!important}.pill{background:#07080a!important;border-color:#343640!important;color:#d7cba4!important}
.btn,button,input[type="submit"],input[type="button"]{background:linear-gradient(180deg,#20232a,#07080b)!important;border-color:#655935!important;color:#f7efd8!important;text-shadow:0 1px 0 #000!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 3px 0 rgba(0,0,0,.62),0 10px 22px rgba(0,0,0,.28)!important}.btn-primary{background:linear-gradient(180deg,#f1d779,#9c7622)!important;border-color:#ffe58a!important;color:#090805!important;text-shadow:0 1px 0 rgba(255,255,255,.34)!important}.btn-outline,.btn-contrast{background:linear-gradient(180deg,#181b21,#08090c)!important;border-color:#5a5f6b!important;color:#f0ead8!important}
input,select,textarea{background:#050608!important;border-color:#393c46!important;color:#f1ecdf!important}input::placeholder,textarea::placeholder{color:#8f8c84!important}.bar{background:#050608!important;border-color:#30333d!important}.bar>i{background:linear-gradient(90deg,#8a712d,#f1d779)!important}.flash{background:linear-gradient(180deg,#111318,#07080a)!important;border-color:#343640!important;color:#e9e2ce!important}.hero{background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.76)),radial-gradient(420px 160px at 58% 25%,rgba(241,215,121,.13),transparent 70%),#06070a!important;border-color:#343640!important;color:#aaa79d!important}.login-hero{background:linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.72)),radial-gradient(520px 280px at 20% 10%,rgba(241,215,121,.12),transparent 70%),#090a0d!important}.login-eyebrow,.login-feed-type{background:rgba(241,215,121,.08)!important;border-color:rgba(241,215,121,.25)!important;color:#f1d779!important}.login-hero h1{color:#fff6db!important}.login-hero p,.login-feed-text{color:#e8dfc8!important}.login-city-art{filter:grayscale(1) contrast(1.15) drop-shadow(0 22px 22px rgba(0,0,0,.72))!important;opacity:.62!important}

/* === ABSOLUTE NOIR OVERRIDE — removes beige/sepia/western palette everywhere === */
:root{
  --bg:#030405!important; --bg-2:#090b0f!important; --bg-3:#010203!important;
  --panel:#0d0f14!important; --panel-deep:#050609!important; --panel-hi:#171a21!important;
  --text:#f1eee6!important; --text-dim:#aaa9a5!important;
  --accent:#d8d8d2!important; --accent-2:#f3f0e6!important; --gold:#d6b85a!important;
  --border:#2e323c!important; --chip:#06070a!important;
  --button-top:#1a1d24!important; --button-bottom:#050609!important; --button-border:#4f5563!important;
}
html,body,#app,.page,.wrap,.content{
  background:#030405!important;
  color:#f1eee6!important;
}
body{
  background:
    radial-gradient(900px 460px at 50% -170px,rgba(255,255,255,.075),transparent 64%),
    radial-gradient(650px 390px at 86% 12%,rgba(98,105,120,.13),transparent 68%),
    linear-gradient(180deg,#090b0f 0%,#050609 48%,#010203 100%)!important;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px),radial-gradient(circle at 50% 20%,transparent 0 30%,rgba(0,0,0,.38) 72%,rgba(0,0,0,.78) 100%)!important;
}
a{color:#d8d8d2!important}.gold{color:#d6b85a!important}
.topbar,.header,.footer{background:linear-gradient(180deg,#10131a,#030405)!important;border-color:#2e323c!important;color:#f1eee6!important;box-shadow:0 10px 34px rgba(0,0,0,.55)!important}
.topbar .brand{color:#f3f0e6!important;text-shadow:0 2px 0 #000,0 0 18px rgba(214,184,90,.18)!important;letter-spacing:.04em!important}
.playerbar,.stats,.nav,.card,.strip,.banner,.flash,.support-box,.layout-newsfeed,
.login-shell,.login-hero,.login-box,.login-metric,.login-feed-item,.login-trust,
.register-panel,.register-hero,.register-feature,.register-trust,
.action-row,.market-card,.shop-card,.crime-card,.point-shop-card,.point-shop-hero,.shop-hero,.market-intro,.crime-intro,
.forum-card,.thread-card,.message-card,.garage-card,.car-card,.property-card,.mission-card,
[class*="panel"],[class*="box"],[class*="card"]{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.22)),#0d0f14!important;
  border-color:#2e323c!important;
  color:#f1eee6!important;
  box-shadow:0 18px 42px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.card h1,.card h2,.card h3,.banner h1,.banner h2,.nav .title,
.login-hero h1,.login-box h2,.login-feed-head h2,.register-hero h1,.register-form-card h2,
.action-title,.shop-title,.market-title,h1,h2,h3{
  color:#f3f0e6!important;text-shadow:0 2px 0 #000!important;
}
.card h3,.nav .title,.login-feed-head,.layout-newsfeed-head{
  background:linear-gradient(180deg,rgba(214,184,90,.09),rgba(0,0,0,.15))!important;
  border-color:#2e323c!important;color:#d6b85a!important;
}
.nav a{background:transparent!important;color:#e9e6db!important;border:1px solid transparent!important}.nav a:hover{background:rgba(214,184,90,.08)!important;border-color:rgba(214,184,90,.22)!important;text-decoration:none!important}
.login-hero,.register-hero{
  background:
    linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.78)),
    radial-gradient(520px 260px at 18% 8%,rgba(255,255,255,.08),transparent 68%),
    radial-gradient(560px 330px at 84% 12%,rgba(214,184,90,.08),transparent 72%),
    #07090d!important;
}
.login-hero:after,.register-hero:after{background:linear-gradient(180deg,transparent,rgba(0,0,0,.72))!important}
.login-eyebrow,.register-eyebrow,.login-feed-type,.pill{
  background:#07080b!important;border-color:#42444d!important;color:#d6b85a!important;
}
.login-hero p,.register-hero p,.sub,.note,.breadcrumbs,.action-meta,.login-feed-count,.login-links,.login-trust li,.register-feature span{color:#aaa9a5!important}
.login-city-art,.register-city{filter:grayscale(1) contrast(1.18) drop-shadow(0 22px 24px rgba(0,0,0,.78))!important;opacity:.56!important}
.table th{color:#aaa9a5!important}.table td,.table tr,.table tbody tr,.table tbody td{
  background:#090b0f!important;border-color:#2e323c!important;color:#f1eee6!important;
}
input,select,textarea{
  background:#030405!important;border-color:#383d49!important;color:#f3f0e6!important;box-shadow:inset 0 1px 4px rgba(0,0,0,.65)!important;
}
input::placeholder,textarea::placeholder{color:#858580!important}
.btn,button,input[type="submit"],input[type="button"],.mobile-nav-toggle{
  background:linear-gradient(180deg,#1b1e25,#050609)!important;
  border-color:#4b505c!important;color:#f3f0e6!important;text-shadow:0 1px 0 #000!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 3px 0 rgba(0,0,0,.65),0 10px 24px rgba(0,0,0,.28)!important;
}
.btn-primary,.btn.gold,.btn-premium{
  background:linear-gradient(180deg,#d6b85a,#6d5520)!important;border-color:#e9d37a!important;color:#050403!important;text-shadow:0 1px 0 rgba(255,255,255,.3)!important;
}
.btn-outline,.btn-contrast{background:linear-gradient(180deg,#151820,#050609)!important;border-color:#555b68!important;color:#f1eee6!important}
.bar{background:#030405!important;border-color:#2e323c!important}.bar>i{background:linear-gradient(90deg,#73777f,#d6b85a)!important}
svg [fill="#f5ead5"],svg [fill="#b9aa8d"],svg [fill="#e7dcc8"],svg [fill="#f5e6c9"],svg [fill="#d6b85a"],svg [fill="#6d5520"],svg [fill="#050403"]{fill:#d6d2c7!important}
svg stop[stop-color="#f5ead5"],svg stop[stop-color="#b9aa8d"],svg stop[stop-color="#ffe18a"],svg stop[stop-color="#94682b"],svg stop[stop-color="#8f672b"]{stop-color:#d6d2c7!important}
