/* GOLD EMPIRE UI 3.0 — calm graphite / restrained gold.
   A focused, mobile-first design pass: icons, tappable controls, readable cards.
   No game, bank or economy logic is implemented in CSS. */
:root{
  --ge-bg:#111317;
  --ge-surface:#1c1f25;
  --ge-surface-raised:#22262e;
  --ge-gold:#dcb772;
  --ge-gold-light:#f1d39c;
  --ge-gold-dark:#ae864b;
  --ge-text:#f5f4f2;
  --ge-muted:#b4b9c2;
  --ge-border:rgba(220,183,114,.19);
  --ge-radius:16px;
  --ge-shadow:0 4px 16px #0002;
}
.ge-ui{background:#111317;color:var(--ge-text)}
.ge-ui .ge-icon{
  width:23px;height:23px;display:inline-block;flex:none;
  color:inherit;stroke:currentColor;fill:none;vertical-align:middle;
}
.ge-ui .topbar{
  background:#181b21;
  border-bottom:1px solid rgba(255,255,255,.075);
  box-shadow:none;
}
.ge-ui .brand-mark{
  width:42px;height:42px;min-width:42px;
  border:1px solid rgba(220,183,114,.46);border-radius:13px;
  background:#292720;color:#ebca8e;
  box-shadow:none;letter-spacing:-.07em;font-weight:850;
}
.ge-ui .brand-copy small{
  color:#a9afb8;font-size:9px;letter-spacing:.085em;
}
.ge-ui .brand-copy b{
  font-size:16px;letter-spacing:.025em;color:#f1d39c;
}
.ge-ui .balance{
  display:flex;align-items:center;gap:7px;
  border:1px solid rgba(220,183,114,.30);background:#282720;
  border-radius:12px;min-height:44px;padding:5px 7px;
  box-shadow:none;color:#f7eddd;
}
.ge-ui .balance>.ge-icon{width:19px;height:19px;color:#e4bd77}
.ge-ui .balance b{font-size:clamp(12px,3.6vw,15px);white-space:nowrap;letter-spacing:0}
.ge-ui .balance i{
  width:29px;height:29px;min-width:29px;display:grid;place-items:center;
  border-radius:8px;background:#caa15d;color:#121212;font-size:18px;
  font-style:normal;border:0;
}
.ge-ui #content{padding-top:15px}
.ge-ui .app-shell{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
.ge-ui .bottom-nav{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;
  padding:6px 6px max(6px,env(safe-area-inset-bottom,0px));
  background:#1b1e24;border:1px solid rgba(255,255,255,.10);
  border-radius:17px;box-shadow:0 9px 24px #0007;
}
.ge-ui .bottom-nav .nav{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-height:59px;min-width:0;gap:5px;padding:8px 2px;
  border-radius:12px;color:#b6bac4;background:transparent;
  border:1px solid transparent;
}
.ge-ui .bottom-nav .nav .glyph{display:grid;place-items:center;line-height:1}
.ge-ui .bottom-nav .nav .glyph .ge-icon{width:23px;height:23px}
.ge-ui .bottom-nav .nav>span:last-child{font-size:11px;font-weight:700;line-height:1.25}
.ge-ui .bottom-nav .nav.active,.ge-ui .bottom-nav .nav[aria-current="page"]{
  background:#3a3023;border-color:rgba(220,183,114,.42);color:#ffe0a7;
  box-shadow:none;
}
.ge-ui .bottom-nav .nav:focus-visible{outline:2px solid #f2d9a6;outline-offset:2px}
.ge-ui #page-world .ge-home{display:grid;gap:16px;min-width:0}
.ge-ui #page-world .ge-home .ge-home-hero{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.85fr);
  gap:17px;align-items:center;min-height:0;
  padding:22px;border:1px solid rgba(220,183,114,.32);
  border-radius:18px;
  background:linear-gradient(120deg,#292720 0%,#21242b 65%,#1a1f27 100%);
  box-shadow:none;overflow:hidden;
}
.ge-ui #page-world .ge-home .ge-home-hero:after{display:none}
.ge-ui #page-world .ge-home-eyebrow{
  color:#d5b77f;font-size:10px;letter-spacing:.07em;font-weight:800;
}
.ge-ui #page-world .ge-home-welcome h1{
  margin:8px 0 9px;font-size:clamp(21px,4vw,30px);
  line-height:1.25;letter-spacing:-.035em;color:#f8f4ed;
}
.ge-ui #page-world .ge-home-welcome p{line-height:1.55;color:#c0c3c8;font-size:12px}
.ge-ui #page-world .ge-home-balance{
  display:grid;gap:7px;padding:16px;border:1px solid rgba(220,183,114,.23);
  border-radius:13px;background:#16191fc7;min-width:0;
}
.ge-ui #page-world .ge-home-balance small{
  color:#c8c0b5;font-size:10px;letter-spacing:.08em;font-weight:800;
}
.ge-ui #page-world .ge-home-balance strong{
  color:#f1d39c;font-size:clamp(24px,4vw,30px);
  line-height:1.2;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;
}
.ge-ui #page-world .ge-home-income{font-size:12px;border-radius:9px;justify-self:start}
.ge-ui #page-world .ge-home-balance .ge-home-footnote{font-size:11px;line-height:1.45}
.ge-ui #page-world .ge-home-stats{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;
}
.ge-ui #page-world .ge-home-stat{
  background:#1d2229;border:1px solid #ffffff15;box-shadow:none;
  border-radius:13px;padding:13px 11px;min-height:73px;display:grid;align-content:center;gap:5px;
}
.ge-ui #page-world .ge-home-stat span{font-size:10px;color:#b9bdc4;line-height:1.35}
.ge-ui #page-world .ge-home-stat strong{font-size:clamp(15px,2.2vw,19px);line-height:1.3;color:#f1d39c;overflow-wrap:anywhere}
.ge-ui #page-world .ge-home-section{gap:10px}
.ge-ui #page-world .ge-home-sectionhead h2{font-size:19px;color:#f4f2ed;letter-spacing:-.025em}
.ge-ui #page-world .ge-home-sectionhead small{font-size:11px;color:#aeb4bf}
.ge-ui #page-world .ge-home-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;min-width:0;
}
.ge-ui #page-world .ge-home-link,
.ge-ui #page-world .ge-home-link.ge-home-link-featured{
  position:relative;isolation:isolate;overflow:hidden;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;
  padding:16px;gap:12px;min-width:0;min-height:165px;
  border:1px solid rgba(220,183,114,.21);border-radius:16px;
  background:linear-gradient(150deg,#292d35,#1c222a);
  box-shadow:none;text-align:left;transition:border-color 160ms ease,transform 160ms ease;
}
.ge-ui #page-world .ge-home-link:focus-visible,
.ge-ui #page-world .ge-home-shortcuts button:focus-visible{
  outline:2px solid #f1d39c;outline-offset:2px;
}
.ge-ui #page-world .ge-home-link:active{transform:scale(.99)}
.ge-ui #page-world .ge-home-link-icon{
  position:relative;z-index:2;display:grid;place-items:center;
  width:43px;height:43px;min-width:43px;min-height:43px;
  border:1px solid rgba(220,183,114,.32);background:#3e3526;
  border-radius:12px;color:#efca87;box-shadow:none;
}
.ge-ui #page-world .ge-home-link-icon .ge-icon{width:23px;height:23px}
.ge-ui #page-world .ge-home-link-content{position:relative;z-index:2;display:grid;gap:4px;padding-right:12px}
.ge-ui #page-world .ge-home-link strong{
  font-size:clamp(13px,2.6vw,17px);color:#f8f5ed;
  line-height:1.3;font-weight:800;letter-spacing:-.012em;overflow-wrap:anywhere;
}
.ge-ui #page-world .ge-home-link small{
  color:#c2c6cd;font-size:12px;line-height:1.45;overflow-wrap:anywhere;
}
.ge-ui #page-world .ge-home-link-chevron{
  position:absolute;z-index:3;right:12px;bottom:12px;top:auto;
  display:grid;place-items:center;width:27px;height:27px;
  color:#d8bd8e;background:#2c3035;border-radius:9px;
}
.ge-ui #page-world .ge-home-link-chevron .ge-icon{width:17px;height:17px}
.ge-ui #page-world .ge-home-shortcuts{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;
}
.ge-ui #page-world .ge-home-shortcuts button{
  display:flex;align-items:center;gap:9px;min-width:0;min-height:52px;
  padding:11px 13px;border:1px solid #ffffff17;border-radius:13px;
  background:#21252c;color:#e9e5dc;text-align:left;
}
.ge-ui #page-world .ge-home-shortcuts button>.ge-icon:first-child{width:20px;height:20px;color:#d7b879}
.ge-ui #page-world .ge-home-shortcuts button>span{flex:1;font-size:13px;font-weight:750}
.ge-ui #page-world .ge-home-shortcuts button>.ge-icon:last-child{width:16px;height:16px;color:#b7b6b4}
.ge-ui #page-world .ge-home-footnote{font-size:11px;color:#adb2bb;line-height:1.5}
.ge-ui .ge-bank-game{gap:14px}
.ge-ui .ge-bank-game-head{
  display:grid;gap:5px;padding:20px;
  background:linear-gradient(125deg,#292720,#1c222b);
  border:1px solid rgba(220,183,114,.29);border-radius:17px;
}
.ge-ui .ge-bank-game-head>span{font-size:10px;color:#d2ae72;letter-spacing:.075em}
.ge-ui .ge-bank-game-head h1{display:flex;align-items:center;gap:9px;font-size:26px;color:#f5ead4}
.ge-ui .ge-bank-game-head h1 .ge-icon{color:#e9c889;width:25px;height:25px}
.ge-ui .ge-bank-game-head p{color:#c2c7cd;font-size:12px;line-height:1.55}
.ge-ui .ge-bank-game-tabs{
  border:1px solid #ffffff18;background:#1d2229;padding:5px;border-radius:14px;gap:5px;
}
.ge-ui .ge-bank-tab{min-height:56px;padding:10px 13px;gap:3px;border-radius:10px}
.ge-ui .ge-bank-tab strong{font-size:14px}
.ge-ui .ge-bank-tab small{font-size:11px}
.ge-ui .ge-bank-tab.active{background:#3b3226;border-color:rgba(220,183,114,.34);color:#f6dca6}
.ge-ui .ge-bank-capital>div{
  background:#23272f;border:1px solid #ffffff16;padding:17px;border-radius:14px;
}
.ge-ui .ge-bank-capital small{color:#bbbcc0;font-size:11px}
.ge-ui .ge-bank-capital strong{color:#f0d19a;font-size:clamp(18px,4vw,27px)}
.ge-ui .ge-bank-service-title h2{font-size:17px;color:#f6f3ec}
.ge-ui .ge-bank-service-title p{font-size:12px;line-height:1.5}
.ge-ui .ge-bank-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ge-ui .ge-bank-service{
  display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;
  padding:13px;min-height:78px;border-radius:13px;
  border:1px solid #ffffff18;background:#22262d;box-shadow:none;color:#f2efe8;
}
.ge-ui .ge-bank-service-icon{
  display:grid;place-items:center;width:42px;height:42px;border-radius:11px;
  background:#393326;color:#e4c184;
}
.ge-ui .ge-bank-service-icon .ge-icon{width:22px;height:22px}
.ge-ui .ge-bank-service-copy{display:grid;gap:4px;min-width:0}
.ge-ui .ge-bank-service-copy strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.ge-ui .ge-bank-service-copy small{font-size:11px;line-height:1.45;color:#b4bac3}
.ge-ui .ge-bank-service-arrow{color:#b8a47f}
.ge-ui .ge-bank-service-arrow .ge-icon{width:17px;height:17px}
.ge-ui .ge-bank-service:active{transform:scale(.99)}
.ge-ui .ge-bank-invest-root{min-width:0;overflow-wrap:anywhere}
.ge-ui .ge-bank-invest-root button{min-height:44px}
.ge-ui .ge-earn-simple .hero,
.ge-ui .ge-profile-simple .hero{
  border:1px solid rgba(220,183,114,.25);
  background:linear-gradient(115deg,#272620,#1d222a);border-radius:16px;
  box-shadow:none;min-height:0;
}
.ge-ui .ge-earn-simple .hero .hero-mark,
.ge-ui .ge-profile-simple .hero .hero-mark{display:none}
.ge-ui .ge-work-card{box-shadow:none;border-color:#ffffff1a;border-radius:14px}
.ge-ui .ge-work-card .row b{display:inline-flex;align-items:center;gap:8px}
.ge-ui .ge-work-card .row b .ge-icon{width:19px;height:19px;color:#d8b479}
.ge-ui .ge-earn-simple .button,.ge-ui .ge-profile-simple .button{min-height:48px}
.ge-ui .ge-leader-head{background:linear-gradient(115deg,#2a281f,#1c242d);box-shadow:none}
.ge-ui .ge-leader-head h1{display:flex;align-items:center;gap:9px;font-size:clamp(22px,5vw,32px)}
.ge-ui .ge-leader-head h1 .ge-icon{width:25px;height:25px;color:#e2bf85}
.ge-ui .ge-leader-row{background:#25282e;border-radius:12px}
.ge-ui .ge-leader-row:nth-child(1) .ge-leader-place{border-color:#cda254;background:#554029;color:#ffdd90}
.ge-ui .ge-leader-row:nth-child(2) .ge-leader-place{border-color:#a2acba;background:#323b46;color:#dae2ed}
.ge-ui .ge-leader-row:nth-child(3) .ge-leader-place{border-color:#af775c;background:#483127;color:#dcb4a0}
.ge-ui #notice{border-radius:12px;font-size:13px}
#gold-city-rebirth .rb-catalog-page{gap:12px;padding-inline:2px}
#gold-city-rebirth .rb-catalog-hero{
  padding:18px;border-radius:16px;background:linear-gradient(120deg,#292720,#192229);
  border-color:#cba45a45;
}
#gold-city-rebirth .rb-catalog-hero h2{display:flex;align-items:center;gap:9px;font-size:23px;color:#f4e1bd}
#gold-city-rebirth .rb-catalog-hero h2 svg{width:24px;height:24px;color:#e3bc7b}
#gold-city-rebirth .rb-catalog-hero p{font-size:12px;line-height:1.6;color:#c2c9ca}
#gold-city-rebirth .rb-catalog-stats>div{
  min-width:0;padding:14px;border-radius:13px;background:#1d242a;border:1px solid #d6af6840;
}
#gold-city-rebirth .rb-catalog-stats small{font-size:11px;color:#c0c6c6}
#gold-city-rebirth .rb-catalog-stats strong{font-size:clamp(17px,4vw,24px);color:#f4d7a0}
#gold-city-rebirth .rb-catalog-card{
  display:grid;grid-template-columns:64px minmax(0,1fr) 21px;align-items:center;
  gap:13px;min-width:0;min-height:96px;padding:12px;
  border:1px solid #ffffff20;border-radius:14px;
  background:#20272b;color:#f2ebe1;
}
#gold-city-rebirth .rb-catalog-icon{
  width:64px;height:64px;display:grid;place-items:center;overflow:hidden;
  background:#2b3136;border:1px solid #ffffff10;border-radius:12px;
  font-size:23px;
}
#gold-city-rebirth .rb-catalog-icon svg{width:23px;height:23px}
#gold-city-rebirth .rb-catalog-info{gap:5px}
#gold-city-rebirth .rb-catalog-info strong{font-size:14px;color:#fff1d6;line-height:1.25}
#gold-city-rebirth .rb-catalog-info small{font-size:12px;color:#bfc7c8;line-height:1.45}
#gold-city-rebirth .rb-catalog-info em{font-size:11px;color:#d7b679;font-weight:750}
#gold-city-rebirth .rb-catalog-arrow{font-size:0;color:#d2b67e}
#gold-city-rebirth .rb-catalog-arrow svg{width:19px;height:19px}
#gold-city-rebirth .rb-business-panel{
  background:#151a1e;border-inline-color:#b48c5040;
}
#gold-city-rebirth .rb-business-panel-head{
  background:#20242a;border-bottom:1px solid #d1ab6540;
}
#gold-city-rebirth .rb-business-panel-head h2{color:#fff0d1;font-size:clamp(17px,4vw,22px)}
#gold-city-rebirth .rb-business-panel-scroll{padding:clamp(13px,3vw,22px)}
#gold-city-rebirth .rb-business-panel-scroll .rb-my-detail-heading{
  background:#222a2f;border-radius:14px;border-color:#d1ab6540;
}
#gold-city-rebirth .rb-business-panel .rb-btn{min-height:46px;border-radius:11px}
#gold-city-rebirth .rb-business-panel .rb-my-upgrade,
#gold-city-rebirth .rb-business-panel .rb-my-staff-row{border-radius:12px}
@media(max-width:680px){
  .ge-ui #page-world .ge-home .ge-home-hero{grid-template-columns:minmax(0,1fr);padding:17px;gap:12px}
  .ge-ui #page-world .ge-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ge-ui #page-world .ge-home-link,.ge-ui #page-world .ge-home-link.ge-home-link-featured{
    min-height:160px;padding:14px;
  }
  .ge-ui .ge-bank-services{grid-template-columns:1fr}
  .ge-ui .ge-bank-service{min-height:74px}
  #gold-city-rebirth .rb-catalog-grid{grid-template-columns:1fr}
}
@media(max-width:400px){
  .ge-ui #page-world .ge-home-grid{gap:8px}
  .ge-ui #page-world .ge-home-link,.ge-ui #page-world .ge-home-link.ge-home-link-featured{
    padding:12px;min-height:165px;gap:8px;
  }
  .ge-ui #page-world .ge-home-link strong{font-size:13px}
  .ge-ui #page-world .ge-home-link small{font-size:11px}
  .ge-ui #page-world .ge-home-link-icon{width:39px;height:39px;min-width:39px;min-height:39px}
  .ge-ui #page-world .ge-home-link-chevron{right:8px;bottom:9px}
  .ge-ui .ge-bank-capital{grid-template-columns:minmax(0,1fr)}
  .ge-ui .bottom-nav{gap:1px;padding-inline:3px}
  .ge-ui .bottom-nav .nav>span:last-child{font-size:10px}
  .ge-ui #page-world .ge-home-shortcuts{gap:6px}
  .ge-ui #page-world .ge-home-shortcuts button{padding:10px}
  #gold-city-rebirth .rb-catalog-card{grid-template-columns:58px minmax(0,1fr) 18px;gap:9px;padding:9px}
  #gold-city-rebirth .rb-catalog-icon{width:58px;height:58px}
}
@media(max-width:335px){
  .ge-ui #page-world .ge-home-grid{grid-template-columns:1fr}
  .ge-ui #page-world .ge-home-link,.ge-ui #page-world .ge-home-link.ge-home-link-featured{min-height:115px}
  .ge-ui #page-world .ge-home-link-content{padding-right:22px}
  .ge-ui .balance b{font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .ge-ui #page-world .ge-home-link{transition:none!important}
}

/* UI 3.1: no demo photo or illustration in business cards. */
.ge-ui .ge-business-mark,.ge-ui .business-art-icon{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;color:#edc783;background:linear-gradient(145deg,#3b3327,#242930);border:1px solid rgba(223,181,106,.34)}
.ge-ui .ge-business-mark .ge-icon,.ge-ui .business-art-icon svg{width:26px;height:26px;fill:none;stroke:currentColor}
.ge-ui .owned-business-card .row>.ge-business-mark{width:37px;height:37px}
.ge-ui .owned-business-card .row>.ge-business-mark .ge-icon{width:22px;height:22px}
.ge-ui #page-world .ge-home-link-icon{border-color:rgba(225,186,111,.4);background:linear-gradient(145deg,#443724,#292d33);color:#f5d394}
#gold-city-rebirth .rb-catalog-icon{background:linear-gradient(140deg,#3d3528,#222b30);border-color:rgba(218,176,99,.35);color:#efc783}
#gold-city-rebirth .rb-catalog-icon .ge-enterprise-icon{display:block;width:32px;height:32px;fill:none;stroke:currentColor}
#gold-city-rebirth .rb-income-enterprise-icon .ge-enterprise-icon{display:block;width:24px;height:24px;fill:none;stroke:currentColor}

/* Instant estimated balance previews are clearly distinguished until settlement. */
.ge-ui.ge-balance-pending #top-balance,.ge-ui.ge-balance-pending [data-ge-live-balance]{color:#ffe1a6;font-variant-numeric:tabular-nums}
.ge-ui [data-ge-live-balance]{font-variant-numeric:tabular-nums}
.ge-ui .ge9-confirm:disabled{cursor:progress}

.ge-ui button.is-processing{cursor:progress;opacity:.72;pointer-events:none}
