/* GOLD CITY v7.2 — COMPACT FOUR-TAB TELEGRAM REDESIGN
   UI-only; all previous server actions, ledgers and construction APIs remain. */
#gold-city-2d{
 --city72-gold:#e8c785;
 --city72-border:#596e5d;
 --city72-panel:#1b2926;
}
#gold-city-2d .city2d-app{
 background:radial-gradient(ellipse at 70% -20%,#80602e28,transparent 55%),#0e1816;
}
#gold-city-2d .city2d-top{
 min-height:57px;
 padding:calc(var(--city2d-safe-top,0px) + 7px) 13px 7px;
 gap:8px;background:#11201c;
 border-bottom:1px solid #967e516b;
}
#gold-city-2d .city2d-brand{gap:8px}
#gold-city-2d .city2d-brandmark{
 width:34px;height:34px;border-radius:9px;
 border-color:#c2a46a;background:#3d3b2a;
}
#gold-city-2d .city2d-brandmark svg{width:19px;height:19px}
#gold-city-2d .city2d-brand small{
 color:#c8b080;letter-spacing:.12em;font-size:8px
}
#gold-city-2d .city2d-brand strong{
 font-size:17px;letter-spacing:-.03em;color:#ffe3a9
}
#gold-city-2d .city2d-brand sup{display:none}
#gold-city-2d .city2d-top .city2d-round{
 width:35px;height:35px;border-radius:10px;
 border:1px solid #776f56;background:#22312b;color:#efd8a3;
}
#gold-city-2d .city2d-main{
 padding:10px clamp(9px,2.6vw,19px) 18px;
 scrollbar-color:#637963 transparent;
}
#gold-city-2d .city72-pageheading{
 display:flex;justify-content:space-between;align-items:center;
 gap:12px;margin:2px 2px 9px;
}
#gold-city-2d .city72-pageheading small{
 display:block;font-size:9px;color:#bca06d;
 font-weight:850;letter-spacing:.15em;
}
#gold-city-2d .city72-pageheading h1{
 margin:3px 0 0;font-size:18px;line-height:1.2;
 color:#ffecbe;font-weight:900;letter-spacing:-.02em;
}
#gold-city-2d .city72-subnav{
 display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);
 position:sticky;top:-10px;z-index:7;
 gap:4px;margin:0 0 12px;
 padding:5px;background:#152820f5;
 border:1px solid #5c725d;border-radius:12px;
 box-shadow:0 5px 15px #09171177;
}
#gold-city-2d .city72-subnav button{
 min-height:38px;padding:7px 3px;border:1px solid transparent;
 border-radius:8px;background:transparent;color:#b2c7b9;
 font-size:11px;font-weight:800;line-height:1.2;
 white-space:normal;
}
#gold-city-2d .city72-subnav button.active{
 color:#23291f;background:linear-gradient(120deg,#f1d49b,#c5a264);
 border-color:#f2deaf;
}
#gold-city-2d .city2d-bottom.city72-nav{
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:4px;
 padding:5px 8px calc(6px + max(env(safe-area-inset-bottom,0px),var(--tg-content-safe-area-inset-bottom,0px),var(--city2d-safe-bottom,0px)));
 min-height:58px;
 background:linear-gradient(180deg,#1b2b26,#10201c);
 border-top:1px solid #978359a8;
 box-shadow:0 -4px 16px #071410b0;
}
#gold-city-2d .city2d-bottom.city72-nav button{
 min-height:46px;
 display:flex;align-items:center;justify-content:center;
 gap:3px;flex-direction:column;
 padding:3px 2px;border:1px solid transparent;
 border-radius:10px;color:#b1bfb6;
}
#gold-city-2d .city2d-bottom.city72-nav button span{
 font-size:10px;font-weight:800;white-space:nowrap;
}
#gold-city-2d .city2d-bottom.city72-nav button.selected{
 border-color:#c6a66c;color:#ffe5ae;
 background:#594b32a6;
}
#gold-city-2d .city72-summary{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:7px;margin-bottom:10px;
}
#gold-city-2d .city72-summary-item{
 min-width:0;display:grid;gap:2px;
 padding:11px 12px;
 border:1px solid #a08b5c8a;border-radius:12px;
 background:linear-gradient(130deg,#2b3d33,#1a2c27);
}
#gold-city-2d .city72-summary-item small{
 color:#bac9b9;font-size:9px;font-weight:700
}
#gold-city-2d .city72-summary-item strong{
 color:#ffe3a9;font-size:clamp(15px,4vw,21px);
 font-weight:900;overflow-wrap:anywhere;
}
#gold-city-2d .city72-income-action{
 width:100%;min-height:40px;padding:7px 11px;
 margin:0 0 9px;border:1px solid #b6a16d;
 border-radius:10px;background:#354737;color:#f6db9f;
 font-size:11px;font-weight:850;
}
#gold-city-2d .city2d-mapbox{
 border:1px solid #7b9876b0;
 border-radius:14px;padding:10px;
 background:linear-gradient(160deg,#192d25,#101a1a);
 box-shadow:0 7px 25px #050f0d69;
}
#gold-city-2d .city2d-mapbox>.city2d-sectionhead{margin-bottom:6px}
#gold-city-2d .city2d-mapbox .city2d-sectionhead h2{
 font-size:14px;color:#f2ddb4
}
#gold-city-2d .city2d-mapbox .city2d-sectionhead small{
 font-size:8px;letter-spacing:.12em;color:#bda36d;
}
#gold-city-2d .city51-map-help{
 margin:2px 0 8px;color:#b6c8b7;
 font-size:10px;line-height:1.45;
}
#gold-city-2d .city72-mapbar{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:5px;margin-bottom:9px;
}
#gold-city-2d .city72-mapbar button{
 min-width:0;min-height:39px;
 padding:5px 3px;border:1px solid #63795f;
 border-radius:9px;background:#263a30;color:#d7e4d0;
 font-size:10px;font-weight:800;
}
#gold-city-2d .city72-mapbar button.active,
#gold-city-2d .city72-mapbar button[aria-expanded="true"]{
 border-color:#e6c383;background:#54492f;color:#ffe3ad;
}
#gold-city-2d .city72-mapbar button:only-child{grid-column:1/-1}
#gold-city-2d .city72-map-tools{
 display:grid;gap:9px;margin-top:9px;
 border:1px solid #5c725e;border-radius:12px;
 padding:10px;background:#15251fa8;
}
#gold-city-2d .city72-map-tools[hidden]{display:none!important}
#gold-city-2d .city72-tools-title{
 margin:0;font-weight:900;font-size:11px;color:#f1d49d
}
#gold-city-2d .city72-tools-help{
 margin:0;font-size:10px;line-height:1.5;color:#b6c9b7
}
#gold-city-2d .city72-map-tools .city2d-filter{
 flex-wrap:wrap;margin:0
}
#gold-city-2d .city72-map-tools .city2d-filter button{
 min-height:35px;padding:4px 9px;
}
#gold-city-2d .city72-builder-panel{
 margin:0 0 9px;border:1px solid #c9a66b;
 border-radius:12px;padding:9px;background:#28382a;
}
#gold-city-2d .city72-builder-title{
 color:#ffe5af;font-size:12px;font-weight:850;
 margin:0 0 7px;
}
#gold-city-2d .city72-map-tools .city40-launcher,
#gold-city-2d .city72-map-tools .city50-launch,
#gold-city-2d .city72-map-tools .city70-launch{margin:0}
#gold-city-2d .city51-map-viewport{height:clamp(350px,55dvh,610px)}
#gold-city-2d .city2d-legend{padding:9px 0 2px}
#gold-city-2d .city72-footnote{
 margin:12px 3px 0;color:#9dac9f;font-size:10px;line-height:1.5;
}
#gold-city-2d .city72-subpage .city40-heading,
#gold-city-2d .city72-subpage .city40-tabs{display:none}
#gold-city-2d .city72-subpage .city40-empire{display:grid;gap:11px}
#gold-city-2d .city72-construction .city50-hero{display:none}
#gold-city-2d .city72-construction .city50-root{display:grid;gap:8px}
#gold-city-2d .city72-construction .city50-summary{
 margin:0;gap:6px;
}
#gold-city-2d .city72-construction .city50-section-title{
 margin-top:2px
}
#gold-city-2d .city72-build-shortcut{
 display:flex;align-items:center;justify-content:space-between;gap:10px;
 margin-top:12px;padding:12px 11px;border:1px solid #8d7d58;
 border-radius:12px;background:#26382f;
 color:#f6dda4;font-weight:800;font-size:11px;
}
#gold-city-2d .city72-business-head{
 display:flex;justify-content:space-between;align-items:center;
 gap:12px;margin:0 0 10px;
}
#gold-city-2d .city72-business-head strong{
 color:#f3dba7;font-size:13px
}
#gold-city-2d .city72-business-head small{
 color:#adbfaf;font-size:10px
}
#gold-city-2d .city72-business-list{display:grid;gap:7px}
#gold-city-2d .city72-business-list .city2d-list-row{
 min-height:62px;padding:7px 9px
}
#gold-city-2d .city72-business-list .city2d-list-art{
 width:51px;height:44px
}
#gold-city-2d .city72-hall-layout{
 display:grid;gap:8px;
}
#gold-city-2d .city72-hall-tabs{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
 gap:5px;padding:5px;border:1px solid #746d51;
 border-radius:12px;background:#1c3027;
}
#gold-city-2d .city72-hall-tabs button{
 min-height:38px;min-width:0;padding:6px 2px;
 border:1px solid transparent;border-radius:8px;
 background:#253c31;color:#b9cabd;
 font-weight:800;font-size:10px;
}
#gold-city-2d .city72-hall-tabs button.active{
 background:#bfa06a;border-color:#e9d09b;
 color:#211d17;
}
#gold-city-2d .city72-hall-layout .city70-page{gap:10px}
#gold-city-2d .city72-hall-layout .city70-hero{
 padding:9px 10px;
 display:grid;justify-items:center;gap:3px;
}
#gold-city-2d .city72-hall-layout .city70-hero>div:first-child{
 height:68px;max-width:150px
}
#gold-city-2d .city72-hall-layout .city70-hero h2{
 font-size:14px;margin:0;
}
#gold-city-2d .city72-hall-layout .city70-hero p{
 font-size:10px;margin:0 0 6px;
}
#gold-city-2d .city72-hall-layout .city70-treasury-cards{
 width:100%;
}
#gold-city-2d .city72-hall-layout .city70-treasury-cards>div{padding:7px 4px}
#gold-city-2d .city72-hall-layout .city70-treasury-cards b{
 font-size:clamp(11px,3.7vw,16px)
}
/* Only ONE mayor topic is expanded at a time.
   All existing payment, project and policy forms remain in the DOM with
   identical click handlers and exact server-provided data. */
#gold-city-2d .city72-hall-layout .city70-page>.city70-group{display:none}
#gold-city-2d .city72-hall-mode-treasury .city70-page>.city70-group[data-city-scroll-key="city-hall:treasury"],
#gold-city-2d .city72-hall-mode-treasury .city70-page>.city70-group[data-city-scroll-key="city-hall:history"],
#gold-city-2d .city72-hall-mode-buildings .city70-page>.city70-group[data-city-scroll-key="city-hall:projects"],
#gold-city-2d .city72-hall-mode-services .city70-page>.city70-group[data-city-scroll-key="city-hall:services"],
#gold-city-2d .city72-hall-mode-services .city70-page>.city70-group[data-city-scroll-key="city-hall:indices"],
#gold-city-2d .city72-hall-mode-strategy .city70-page>.city70-group[data-city-scroll-key="city-hall:policy"],
#gold-city-2d .city72-hall-mode-strategy .city70-page>.city70-group[data-city-scroll-key="city-hall:indices"]{
 display:grid;
}
#gold-city-2d .city72-hall-layout .city70-group{
 padding:12px 10px;
}
#gold-city-2d .city72-hall-layout .city70-top{display:none}
#gold-city-2d .city72-hall-layout .city70-policies{gap:6px}
#gold-city-2d .city72-hall-layout .city70-policies button{
 min-height:116px;padding:8px
}
#gold-city-2d .city72-hall-layout .city70-districts{margin-bottom:-7px}
#gold-city-2d .city72-hall-layout .city70-project{gap:6px}
#gold-city-2d .city72-hall-layout .city70-project-info p{line-height:1.35}
@media(max-width:360px){
 #gold-city-2d .city72-subnav button{font-size:10px;padding:5px 2px}
 #gold-city-2d .city72-mapbar button{font-size:9px}
 #gold-city-2d .city72-hall-tabs button{font-size:9px}
 #gold-city-2d .city2d-bottom.city72-nav button span{font-size:9px}
 #gold-city-2d .city72-pageheading h1{font-size:16px}
}
@media(min-width:700px){
 #gold-city-2d .city72-summary{max-width:620px}
 #gold-city-2d .city72-pageheading{margin-top:4px}
 #gold-city-2d .city72-hall-tabs{max-width:720px}
}
@media(prefers-reduced-motion:reduce){
 #gold-city-2d .city72-nav *,
 #gold-city-2d .city72-mapbar *{animation:none!important;transition:none!important}
}
