/* Approved premium surfaces and paired menu inlays. */
body{background:radial-gradient(ellipse at 84% 0%,#41301d33,transparent 55%),#0c1217}
.sidebar .brand{padding:0;margin:-12px -16px 10px;position:relative}
.sidebar .brand .game-logo-sidebar{content:normal;width:100%!important;max-width:none!important;display:block;aspect-ratio:2/1;object-fit:contain;margin:0;mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%)}
.top{border-bottom:1px solid #bd955342;padding-bottom:25px}
.player-wallet,.panel,.stat,.empire-hero{position:relative;border:1px solid #a8864e90;border-radius:8px;box-shadow:inset 0 0 0 4px #0b1116,inset 0 0 0 5px #a27d3c32,0 14px 32px #0004}
.player-wallet,.panel,.stat{background:linear-gradient(115deg,#1c242a,#111a21 70%)}
.player-wallet:before,.panel:before,.stat:before,.empire-hero:before{content:'';position:absolute;pointer-events:none;z-index:3;inset:7px auto auto 7px;width:50px;height:50px;border-left:2px solid #edce89b0;border-top:2px solid #edce89b0;clip-path:polygon(0 13px,13px 0,100% 0,100% 2px,14px 2px,2px 14px,2px 100%,0 100%)}
.player-wallet:after,.panel:after,.stat:after{content:'';position:absolute;pointer-events:none;right:7px;bottom:7px;width:50px;height:50px;border-right:2px solid #edce89b0;border-bottom:2px solid #edce89b0;clip-path:polygon(0 100%,calc(100% - 13px) 100%,100% calc(100% - 13px),100% 0,calc(100% - 2px) 0,calc(100% - 2px) calc(100% - 14px),calc(100% - 14px) calc(100% - 2px),0 calc(100% - 2px))}
.panel{padding:32px}
.intro-cue{background:linear-gradient(110deg,#413322,#1a252d 72%);border-color:#c2a06b}
.empire-hero{overflow:hidden}
#content h1,#content h2,#content h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em;text-transform:none;font-weight:400}
#content .eyebrow{font-family:system-ui,sans-serif;font-size:10px;letter-spacing:.24em;color:#cfb785}
.player-wallet{background:linear-gradient(130deg,#272c2b,#171e23 55%,#11191f);border-color:#a289566e}
.pill,.signature-badge{border-color:#b8995d55;background:linear-gradient(#bda06c0d,#0000);color:#dfcda4}
.stat b{font-family:Georgia,serif;font-weight:400;color:#efddba}
#content>.panel,.asset-card,.photo-card{background:linear-gradient(135deg,#252b2a,#151e25 55%,#10171d)}
.btn{transition:background .18s,box-shadow .18s,transform .18s}
.btn:not(.secondary){background:linear-gradient(115deg,#f2dfa8,#c6a56b);border:1px solid #efdaa1;box-shadow:inset 0 0 0 3px #b68f4a2b,0 4px 14px #0005;color:#30251a}
.btn:not(.secondary):hover{box-shadow:inset 0 0 0 3px #ffeac440,0 6px 20px #bea16826;transform:translateY(-1px)}
:is(.asset-card,.photo-card){border:1px solid #a5854c70;border-radius:9px;box-shadow:inset 0 0 0 4px #0c131855,0 14px 28px #0005;overflow:hidden}
:is(.asset-card,.photo-card) .card-body{padding:25px}
:is(.asset-card,.photo-card) h3{font-size:24px;color:#eeddb9;line-height:1.2;margin-bottom:12px}
.asset-price{color:#dfc186;font-family:Georgia,serif;font-size:24px;letter-spacing:-.03em}
:is(.asset-card,.photo-card) .btn{border-radius:5px;font-size:12px;letter-spacing:.025em}
:is(.asset-card,.photo-card) small,:is(.asset-card,.photo-card) .muted{color:#a9aaa6}
.photo-card .image-wrap{border-bottom:1px solid #b5935966}
.photo-card .image-badge{background:#0b1219d9;border:1px solid #cfaf7466;color:#e6cfa2;letter-spacing:.14em;padding:7px 9px}
.photo-card .title-unlock{border-top:1px solid #b5935930;background:#bfa26908;padding:14px;margin:18px 0;color:#dec79c}
.photo-card .asset-price small{display:block;margin-top:4px;font:10px system-ui;color:#969f9f;letter-spacing:.14em;text-transform:uppercase}
.footer,.sidebarfoot{color:#d6bd86}
@media(max-width:760px){.sidebar .brand{margin:-8px -15px 6px}.panel{padding:25px}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:not(.secondary):hover{transform:none}}
.sidebar{background-image:linear-gradient(100deg,#0a1015,#111a21)}
.sidebar .nav{position:relative}
.sidebar .nav:before,.sidebar .nav:after{content:'';position:absolute;top:64px;bottom:0;width:4px;pointer-events:none;background:linear-gradient(180deg,transparent,#cfad6c70 14%,#f3d9a3a8 35%,#b68e4b68 50%,#efd095a0 70%,transparent),linear-gradient(180deg,transparent,#b28a4c60 14%,#e8ca9080 35%,#9b753c50 50%,#e0bd7c88 70%,transparent);background-size:1px 100%,1px 100%;background-position:left top,right top;background-repeat:no-repeat;box-shadow:0 0 6px #e3c48a12}
.sidebar .nav:before{left:-10px}.sidebar .nav:after{right:-10px}
.sidebar .navigation-section{position:relative;border-bottom-color:#ba955636}
.sidebar .navigation-section:before,.sidebar .navigation-section:after{content:'';position:absolute;bottom:-28px;width:9px;height:56px;pointer-events:none;z-index:1;background:linear-gradient(to bottom,transparent,#0d151bf2 38%,#0d151b 50%,#0d151bf2 62%,transparent)}
.sidebar .navigation-section:before{left:-12px}.sidebar .navigation-section:after{right:-12px}
.sidebar .navigation-section:last-of-type:before,.sidebar .navigation-section:last-of-type:after{display:none}

/* Approved black/Bordeaux surfaces, restrained compared with the preview. */
body{background:radial-gradient(ellipse at 88% 12%,#481d2c12,transparent 68%),radial-gradient(ellipse at 25% 85%,#391b260c,transparent 65%),#0e1013}
.sidebar{background-image:linear-gradient(110deg,#0e1014,#15151b)}
.sidebar .navigation-section:before,.sidebar .navigation-section:after{background:linear-gradient(to bottom,transparent,#14151af2 38%,#14151a 50%,#14151af2 62%,transparent)}
.player-wallet,.panel,.stat,.empire-hero{border:1px solid #b99a5c48;box-shadow:inset 0 0 0 1px #d8b67908,0 14px 32px #0004}
.player-wallet,.panel,.stat,#content>.panel{background:linear-gradient(120deg,#1c1e23,#13161b 75%)}
.intro-cue{background:linear-gradient(110deg,#242227,#16191e 72%)}
.player-wallet:before,.panel:before,.stat:before,.empire-hero:before,.player-wallet:after,.panel:after,.stat:after{content:'';position:absolute;inset:7px 16px auto;pointer-events:none;z-index:3;width:auto;height:4px;border:0;clip-path:none;background:linear-gradient(90deg,transparent,#b58c4c66 15%,#f0d49bba 48%,#b58c4c66 85%,transparent),linear-gradient(90deg,transparent,#b58c4c40 15%,#e7c58070 48%,#b58c4c40 85%,transparent);background-size:100% 1px,100% 1px;background-position:left top,left bottom;background-repeat:no-repeat}
.player-wallet:after,.panel:after,.stat:after{top:auto;bottom:7px}
.panel .panel:before,.panel .panel:after{display:none}
.asset-card,.photo-card{background:linear-gradient(135deg,#1c1e22,#13161b 65%);border-color:#b7975c3d}
/* Shared action buttons: polished champagne, dark secondary, clear danger states. */
.btn{border-radius:7px;font-weight:650;letter-spacing:.035em;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
.btn:not(.secondary):not(.danger){background:linear-gradient(115deg,#f0dfb5 0%,#d7bb83 45%,#c3a16b 100%);border:1px solid #efd9a5;box-shadow:inset 0 1px 0 #fff6,inset 0 0 0 3px #8c682b20,0 4px 12px #0004;color:#302417}
.btn.secondary{background:linear-gradient(120deg,#30252b,#1b1920);border:1px solid #b99a5c65;box-shadow:inset 0 1px 0 #efd9a510,0 3px 10px #0003;color:#ead7ae}
.btn.danger{background:linear-gradient(120deg,#73333d,#48232d);border:1px solid #c37b8370;color:#ffeaeb;box-shadow:inset 0 1px 0 #ffffff12,0 3px 10px #0003}
.btn:not(:disabled):hover{border-color:#edcf8c;box-shadow:inset 0 1px 0 #fff3,0 4px 16px #d0aa5624;transform:translateY(-1px)}
.btn:focus-visible{outline:2px solid #f0d394;outline-offset:3px}
.btn:not(:disabled):active{transform:translateY(0);box-shadow:inset 0 2px 5px #0003}
.btn:disabled{transform:none;box-shadow:none;opacity:.45;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:not(:disabled):hover{transform:none}}
/* Navigation wrappers must not create a second, thick gold button frame. */
.navigation-card{padding:0;background:transparent;border:0;border-radius:7px}
.navigation-card .btn,.intro-cue>.btn{background:linear-gradient(115deg,#f0dfb5 0%,#d7bb83 45%,#c3a16b 100%);color:#302417;border:1px solid #efd9a5;border-radius:7px;box-shadow:inset 0 1px 0 #fff3,0 4px 12px #0003!important}
.btn:not(.secondary):not(.danger){box-shadow:inset 0 1px 0 #fff3,0 4px 12px #0003}
.btn.secondary:not(.danger){background:linear-gradient(115deg,#f0dfb5 0%,#d7bb83 45%,#c3a16b 100%);color:#302417;border:1px solid #efd9a5;box-shadow:inset 0 1px 0 #fff3,0 4px 12px #0003}
/* Keep the navigation toggle quiet while retaining a clear focus target. */
#toggle-sidebar.btn{background:#100d1126;border:1px solid #d8bc7a24;color:#dcc89a99;box-shadow:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
#toggle-sidebar.btn:not(:disabled):hover{background:#19131b99;border-color:#d8bc7a65;color:#efdbaf;box-shadow:none;transform:none}
#toggle-sidebar.btn:focus-visible{background:#19131bcc;color:#efdbaf;outline:2px solid #d8bc7a;outline-offset:3px}
/* Compact account header and persistent edge drawer tab. */
#toggle-sidebar.btn{top:46%;left:252px;min-width:28px;width:28px;height:68px;padding:0;border-radius:0 9px 9px 0;border-left:0;background:#16171be6;color:#d4bf8b;font-size:0;box-shadow:3px 0 14px #0003;z-index:85}
#toggle-sidebar.btn:before{content:'‹';font:25px Georgia,serif}
.sidebar-hidden #toggle-sidebar.btn{left:0}
.sidebar-hidden #toggle-sidebar.btn:before{content:'›'}
@media(min-width:761px){#toggle-sidebar.btn{left:252px}}
@media(max-width:760px){
 .shell>.main,.shell.sidebar-hidden>.main{padding-top:24px}
 .top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 10px;align-items:start}
 .top>div:first-child{grid-column:1;min-width:0}
 .top .eyebrow{font-size:8px;letter-spacing:1.1px}
 .top h2{font-size:17px;overflow-wrap:anywhere;margin-bottom:9px}
 .top .staff-badge{font-size:8px;padding:3px 5px}
 .top .signature-badge{margin-left:5px;font-size:8px}
 .player-header-actions{display:contents}
 .account-controls{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:6px;margin:0;min-width:70px}
 .account-controls .language-control summary{padding:8px;border-radius:6px;font-size:11px;background:#15191bcc}
 .account-controls .language-control img{width:20px;height:13px}
 .account-controls #logout{padding:8px 10px;font-size:10px;min-height:32px}
 .account-controls .language-options{min-width:230px}
 .player-header-actions>.player-wallet{grid-column:1 / -1;grid-row:2;width:100%;padding:15px}
 .header-balances{gap:8px 12px;font-size:11px}
 .header-balances img{width:17px;height:17px}
 .sidebarfoot{display:block;padding:20px 6px 10px;color:#bfa677;font-size:10px;line-height:1.8}
 #toggle-sidebar.btn{left:calc(min(280px,85vw) - 28px)}
 .sidebar-hidden #toggle-sidebar.btn{left:0}
}
/* Keep scrolling while hiding the visual page and drawer scroll tracks. */
html,body,.sidebar{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,.sidebar::-webkit-scrollbar{display:none;width:0;height:0}
.shell>.sidebar{border-right:1px solid #b99a5c48}
#toggle-sidebar.btn{left:268px;top:46%;width:30px;min-width:30px;height:70px;border:1px solid #b99a5c48;border-left:0;border-radius:0 12px 12px 0;background:#13161b;color:#d4bf8b;box-shadow:5px 2px 16px #0003;backdrop-filter:none;-webkit-backdrop-filter:none}
/* Join the tab to the drawer edge without a seam across its opening. */
#toggle-sidebar.btn:after{content:'';position:absolute;left:-2px;top:0;bottom:0;width:3px;background:#13161b;pointer-events:none}
#toggle-sidebar.btn:not(:disabled):hover{background:#191b20}
#toggle-sidebar.btn:hover:after{background:#191b20}
.sidebar-hidden #toggle-sidebar.btn{left:0}
@media(max-width:760px){#toggle-sidebar.btn{left:min(280px,85vw)}.sidebar-hidden #toggle-sidebar.btn{left:0}}
/* Localized metric labels never compete with values on the same flex line. */
.header-balances>span{display:grid;grid-template-columns:20px minmax(0,1fr);align-content:start;align-items:center;column-gap:7px;row-gap:3px;min-width:0}
.header-balances>span>img{grid-column:1;grid-row:1;width:18px;height:18px}
.header-balances .header-label{display:block;grid-column:2;grid-row:1;min-width:0;padding:0;font-size:10px;line-height:1.3;color:#b8ac92;overflow-wrap:anywhere}
.header-balances .header-value{display:block;grid-column:2;grid-row:2;min-width:0;font-size:12px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}
.header-value b{font-weight:500}.header-value .energy-overflow{margin-left:4px}
/* Shared mobile surfaces grow with translated text rather than clipping it. */
#content :is(h1,h2,h3,p,label,.muted,.eyebrow){overflow-wrap:anywhere}
.btn{white-space:normal;overflow-wrap:anywhere;line-height:1.45;height:auto}
:is(.card-body,.section-heading,.formrow,.command-links,.grid2,.cards)>*{min-width:0}
@media(max-width:760px){
 .header-balances{align-items:start}
 .header-balances>span{grid-template-columns:17px minmax(0,1fr);column-gap:5px;padding:5px 0}
 .header-balances .header-label{font-size:10px}
 .header-balances .header-value{font-size:11px}
 #content :is(.panel,.card-body,.asset-card,.photo-card){min-width:0}
 #content .section-heading{flex-wrap:wrap;gap:10px}
 #content :is(.section-heading,.formrow,.command-links)>.btn{max-width:100%}
 #content :is(input,select,textarea){max-width:100%;min-width:0}
 #content table{overflow-wrap:normal}
 .account-controls #logout{max-width:110px;white-space:normal}
}
.top .player-rank{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:4px 10px;font-size:12px;line-height:1.2;letter-spacing:.025em;vertical-align:middle}
.top .player-rank .distinction{display:inline-flex;margin:0;line-height:1}
.top .player-rank .prestige-emblem{width:26px;height:29px;flex-shrink:0}
.rank-display{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:27px;line-height:1.25}
.rank-display>.distinction{display:inline-flex;align-items:center;margin:0}
.rank-display .prestige-emblem{width:30px;height:34px}
.rank-display>span:not(.distinction){flex-basis:100%;margin-top:0}
.profile-family-name{color:#dfc186;font-weight:600}
.achievement-medal{background:linear-gradient(135deg,#242329,#14171c);border:1px solid #b99a5c48;border-radius:9px;box-shadow:inset 0 1px 0 #f4dc9f0a,0 5px 14px #0003;font-size:24px;padding:12px}
.achievement-medal img{width:64px;height:64px;object-fit:contain}
.achievement-medal small{font-size:11px;line-height:1.45;color:#ddcca7;overflow-wrap:anywhere}
@font-face{font-family:'Mafia Calligraphy';src:url('/fonts/great-vibes.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
#content .family-home-hero h1,#content .rival-family-name{font-family:'Mafia Calligraphy',Georgia,serif;font-style:normal;font-weight:400;text-transform:none;letter-spacing:.015em;line-height:1.3}
#content .family-home-hero h1{font-size:clamp(38px,4.5vw,70px);padding:14px 28px}
#content .rival-family-name{font-size:38px;color:#ecd199}
.profile-rank{display:inline-flex;align-items:center;gap:7px;vertical-align:middle}
.profile-rank .prestige-emblem{width:32px;height:32px}
.photo-card.owned:not(.collection-complete){background:linear-gradient(135deg,#202126,#14171c);border-color:#b7975c3d}
.photo-card.collection-complete,.asset-card.collection-complete{background:radial-gradient(ellipse at top right,#c9a86019,transparent 65%),linear-gradient(140deg,#28252b,#15181e);border-color:#d3b977a6;box-shadow:inset 0 0 0 3px #d3b9770b,0 8px 24px #0004}
.collection-complete .image-badge{background:#221e17ed;border-color:#ddbf7e;color:#f5dfab}
.family-power-table{background:linear-gradient(130deg,#242329,#15181e)}
.family-power-table table{border-collapse:separate;border-spacing:0 6px;width:100%}
.family-power-table th{font-size:11px;letter-spacing:.08em;color:#d7bc82;border-bottom:1px solid #b99a5c55}
.family-power-table td{padding:14px;background:#ffffff03;border-top:1px solid #cbb27b19;border-bottom:1px solid #cbb27b19}
.family-power-table tbody tr:last-child td{color:#efd59a;background:#c3a2640b}
.route-visual{display:flex;gap:18px;align-items:center;border:1px solid #b99a5c55;border-radius:9px;overflow:hidden;margin:15px 0;background:#14181e}
.route-visual>img{width:42%;height:145px;object-fit:cover}.route-visual>div{padding:12px;min-width:0}.route-visual strong{color:#edcf91}
@media(max-width:600px){.route-visual{flex-direction:column;align-items:stretch}.route-visual>img{width:100%;height:130px}.route-visual>div{padding:16px}#content .family-home-hero h1{font-size:40px;padding:12px 16px}}
.freight-batches:has(>article:only-child){grid-template-columns:minmax(0,1fr)}
.panel.collection-complete{background:radial-gradient(ellipse at top right,#c9a86019,transparent 65%),linear-gradient(140deg,#28252b,#15181e);border-color:#d3b977a6}
.guide-toggle{background:linear-gradient(115deg,#f5f3ef,#d7d6dc 45%,#b7b8c0 75%,#ecebe8);border:1px solid #f4f3f0;color:#272831;box-shadow:inset 0 1px 0 #fff,0 5px 20px #0005}
.guide-toggle:hover{background:linear-gradient(115deg,#fffefa,#e5e4e9 50%,#c7c8cf);box-shadow:inset 0 1px 0 #fff,0 5px 22px #dddce522}

/* Preserve readable table columns; mobile users swipe the table, not the page. */
#content .tablewrap{width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
#content .tablewrap table{width:max-content;min-width:100%;table-layout:auto;overflow-wrap:normal;word-break:normal}
#content .tablewrap :is(th,td){white-space:nowrap;overflow-wrap:normal;word-break:normal}
#content .tablewrap :is(.table-sort,.player-link,.bot-badge,.staff-badge){white-space:nowrap;overflow-wrap:normal;word-break:normal}
#content .tablewrap :is(p,small,summary){overflow-wrap:normal;word-break:normal}
.best-choice{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid #d7bd7d80;border-radius:30px;background:linear-gradient(120deg,#cfad6c25,#d8cba00b);color:#f2db9f;font-size:12px;white-space:nowrap}
.best-choice-card{border-color:#dbbb7477;box-shadow:0 0 24px #ccac6810}
.coin-card header>img{width:70px;height:70px;filter:drop-shadow(0 5px 5px #0007)}

.trading-results .trading-totals{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:18px}
.trading-results :is(.stat b,td){font-variant-numeric:tabular-nums}
.trade-positive{color:#8fd3b1!important}.trade-negative{color:#eea49c!important}.trade-neutral{color:#e1d5bc!important}
.coin-trade-record{padding:14px 0;border-block:1px solid #d2b67724;margin:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.coin-trade-record h4{grid-column:1/-1;margin:0;color:#d9c28f;font-size:12px;letter-spacing:.08em}
.coin-trade-record small{display:block;font-size:10px;color:#adb1b9}.coin-trade-record strong{font-size:14px;overflow-wrap:anywhere}
.coin-card header>img{width:104px;height:104px;object-fit:contain;filter:drop-shadow(0 8px 9px #000a)}
.production-awards{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.production-awards>span{width:auto;align-self:start}
.highest-profit-badge{display:inline-flex;padding:5px 10px;border:1px solid #bdd5e3a0;border-radius:30px;background:linear-gradient(120deg,#cbdce438,#687e9c15);color:#e1f0fb;font-size:12px;white-space:nowrap}
.highest-profit-card{border-color:#b5cadc77}.highest-profit-quote{border-left:2px solid #b7ccd9;padding-left:12px!important;color:#dae8ef!important}
@media(max-width:420px){.trading-results .trading-totals{grid-template-columns:minmax(0,1fr)}.coin-card header>img{width:92px;height:92px}}
.coin-chart{margin:16px 0;border:1px solid #b89b583d;border-radius:12px;background:linear-gradient(135deg,#d4bb780b,#050b10aa);overflow:hidden}
.coin-chart summary{display:flex;justify-content:space-between;cursor:pointer;padding:12px 16px;color:#d9c28c;font-size:.85rem}.coin-chart-body{padding:0 12px 12px}.coin-chart-heading{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;padding:5px}.coin-chart svg{display:block;width:100%;height:auto;overflow:visible}.chart-grid{stroke:#c4ad7423;stroke-width:1}.chart-label{fill:#a7b1b6;font:11px sans-serif}.chart-line{fill:none;stroke:#e4c98b;stroke-width:2.5;stroke-linejoin:miter;stroke-linecap:butt}.chart-point{fill:#efd89f;opacity:1;stroke:#0c151b;stroke-width:1;r:2.5}.chart-point:hover,.chart-point:focus{opacity:1;r:6}.coin-chart-body p{font-size:.72rem;line-height:1.5}
.coin-position{padding:16px 0;border-top:1px solid #c6ac6f33;border-bottom:1px solid #c6ac6f33;margin:16px 0}.coin-position h4{margin:0 0 12px;color:#dfc68d}.coin-position dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}.coin-position dt{font-size:.72rem;color:#aebbc1}.coin-position dd{margin:4px 0 0;font-size:.95rem;font-weight:600}.coin-position p{font-size:.72rem;line-height:1.6;margin-bottom:0}.coin-position dd span{display:block;font-size:.8rem}
@media(max-width:480px){.coin-position dl{gap:12px}.coin-position dd{font-size:.85rem}}
.batch-sale-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:16px 0}.sale-choice-card{padding:15px;border:1px solid #c5ab6b50;border-radius:12px;background:linear-gradient(130deg,#d6ba7311,#101920)}.sale-choice-card h4{margin:12px 0 6px;color:#e1c58d}.sale-choice-card p{font-size:.78rem;line-height:1.7;margin:6px 0}.production-batch>[data-best-sale]{width:100%;white-space:normal;line-height:1.5}.coin-card form[data-side=sell]{margin-top:18px;padding-top:15px;border-top:1px solid #c8ac6b30}

.production-batch>[data-sell]{margin-top:10px}

/* Keep complete numeric balances on one line; stat-fitting sizes them to their actual tile. */
.stat{min-width:0}
.stat>b.fit-stat-number,.stat>strong.fit-stat-number,.coin-trade-record strong.fit-stat-number,.coin-price-value.fit-stat-number,.coin-position-value.fit-stat-number{display:block;max-width:100%;white-space:nowrap;overflow-wrap:normal;word-break:normal;font-variant-numeric:tabular-nums}
.trading-totals{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))}
.coin-trade-record>div{min-width:0}

.coin-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px}.coin-price-value{min-width:0}

.coin-position dl>div{min-width:0}.coin-position dd .coin-position-value{font:inherit;color:inherit}

button.sale-choice-card{display:block;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;border:1px solid #b69b6555;white-space:normal}button.sale-choice-card.selected-sale-choice{border-color:#e3c68b;box-shadow:inset 0 0 0 1px #d7b97966;background:linear-gradient(130deg,#d6ba7326,#101920)}button.sale-choice-card:focus-visible{outline:2px solid #ead2a1;outline-offset:3px}

/* Edge fades preserve the original lettering and the opaque middle scene. */
.sidebar .brand:after{content:"";position:absolute;inset:0;background:url('/images/game-logo-v5.png') center/contain no-repeat;clip-path:inset(48% 18% 14% 18%);pointer-events:none}
@font-face{font-family:'Mafia Signature';src:url('/fonts/cinzel.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:swap}
/* Classical logo-style lettering, compact and readable. */
.brand-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:16px 8px;text-align:center;max-width:100%}
.brand-footer .brand-footer-name{font-family:'Mafia Signature',Georgia,serif;font-size:20px;line-height:1.2;font-weight:400;color:#e0c994;letter-spacing:.7px;text-transform:uppercase;text-shadow:0 1px 8px #d6ac5020}
.brand-footer .brand-slogan,.brand-footer .brand-version{font-family:'Mafia Signature',Georgia,serif;font-size:10px;font-weight:400;line-height:1.2;letter-spacing:.6px;color:#d6bf91;margin:0;white-space:normal;overflow-wrap:normal;word-break:normal}
.brand-footer .brand-version{font-size:10px;letter-spacing:.6px;color:#b9a580}

.brand-footer .brand-footer-name{font-size:17px}
.main>.footer,.welcome>footer{width:100%;box-sizing:border-box;text-align:center;align-self:stretch;grid-column:1/-1}
.profile-hero>img{opacity:.68!important;mask-image:linear-gradient(90deg,transparent,#000 58%)}
.leading-bid{border-color:#e7cc8a!important;box-shadow:inset 0 0 0 1px #cfb67970,0 0 18px #c5a75d18!important}
.big-score-celebration{border:1px solid #efce80;background:radial-gradient(ellipse at 50% 20%,#80612666,transparent 65%),#111820;box-shadow:0 0 55px #e5b85835}
.big-score-celebration h2{color:#f4d58f;letter-spacing:2px}.big-score-emblem{display:block;width:100px;height:100px;object-fit:contain;margin:12px auto}.big-score-celebration:after{content:"✦  ·  ✧  ·  ✦";display:block;text-align:center;color:#ecd18d;letter-spacing:10px;padding:12px}
.unread-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:2px 5px;border-radius:20px;background:#d7bc7d;color:#151b20;font:600 11px system-ui;margin-left:auto;line-height:1.4}.has-unread{background:linear-gradient(90deg,#d2ad4e22,transparent)!important;color:#ead59f!important;box-shadow:inset 2px 0 #d1ad63}.has-unread-group>summary{color:#e8d095!important}
.business-policy-row{margin-top:14px;padding:12px;border-top:1px solid #bea66f44}.business-policy-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.business-policy-stats strong{display:block;font-size:15px}.asset-contents{border-top:1px solid #bfa57144;margin-top:16px;padding-top:12px}.asset-contents>.missions{grid-template-columns:1fr}.asset-contents .casino-game-art{height:auto;max-height:160px;object-fit:contain}
.vip-protection-card .image-wrap{aspect-ratio:auto;height:auto}.vip-protection-card img{height:auto;max-height:none;object-fit:contain}

.vip-protection{display:grid;grid-template-columns:minmax(180px,40%) minmax(0,1fr);gap:12px 24px;align-items:center}.vip-protection .vip-protection-art{grid-row:1/5;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}.vip-protection h3,.vip-protection p{margin:0}.vip-protection .btn{justify-self:start}@media(max-width:600px){.vip-protection{display:block}.vip-protection .vip-protection-art{margin-bottom:12px}}

.business-policy-stats>span{padding:10px;background:#090f153d;border:1px solid #b59a5d25;border-radius:5px;font-size:11px;color:#aeb9bf}.business-policy-stats strong{color:#dec58d;margin-top:5px}.business-policy-row>h3{display:none}

#content:has([data-product])>.missions{align-items:start}.production-batch{min-width:0}.production-batch h3{font-size:17px}.production-batch .batch-sale-choices{grid-template-columns:1fr}.production-batch .sale-choice-card{min-width:0}.production-batch p{font-size:12px;line-height:1.6}.production-batch .btn{white-space:normal;width:100%;margin-top:8px}.production-capacity{color:#d5c39d;font-size:12px}.recorded-sales{margin-top:18px}
#world-chat-toggle{display:inline-flex;align-items:center;gap:8px}#world-chat-toggle>.unread-count{margin-left:3px;flex:none}

.big-score-celebration{scrollbar-width:none}.big-score-celebration::-webkit-scrollbar{display:none}

.business-policy-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.business-policy-stats>span{min-width:0}.business-policy-stats strong{white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:clamp(13px,1.5vw,19px)}
.business-policy-buttons{display:grid;grid-template-columns:1fr;gap:8px;margin:14px 0}.business-policy-buttons .btn{display:flex;justify-content:space-between;gap:8px;white-space:normal}.business-policy-buttons .policy-selected,.business-policy-buttons .policy-selected:disabled{opacity:1;border-color:#e5c77e;box-shadow:inset 0 0 16px #d4ae4726,0 0 9px #d4ae4720;background:linear-gradient(120deg,#514326,#25231c);color:#f2dca5}
.brand-footer .brand-footer-name{font-size:14px;letter-spacing:.35px;white-space:nowrap}.brand-footer .brand-slogan,.brand-footer .brand-version{font-size:9px;line-height:1.2}.family-summary>.family-operating-stats{grid-column:1/-1;width:100%;margin-top:16px}
.family-summary{flex-wrap:wrap}.family-summary>.family-operating-stats{flex:0 0 100%;min-width:0;box-sizing:border-box}

/* Business results use full-width ledger rows rather than narrow statistic tiles. */
.business-policy-stats{display:flex;flex-direction:column;gap:0;min-width:0;border:1px solid #b59a5d35;border-radius:7px;background:#090f153d;overflow:hidden}
.business-result-line{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:10px;min-height:64px;padding:10px;box-sizing:border-box;border-bottom:1px solid #b59a5d25}
.business-result-line:last-child{border-bottom:0}
.business-result-line>span{font-size:11px;line-height:1.4;color:#aeb9bf;min-width:0;overflow-wrap:normal;word-break:normal}
.business-policy-stats .business-result-line>strong{display:block;margin:0;font-family:'Segoe UI',sans-serif;font-size:15px;line-height:1.3;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;overflow-wrap:normal;word-break:normal;color:#dec58d}

.family-directory-identity .player-link{color:#e0c994;font-family:Georgia,serif;font-size:1.05em}.family-directory-identity .player-link:hover{color:#fff0c5;text-decoration:underline}

.directory-actions{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}.directory-actions .btn{white-space:nowrap;font-size:11px;padding:7px 10px}

.notification-feed{display:grid;gap:14px}.notification-entry{display:grid;grid-template-columns:148px minmax(0,1fr);gap:20px;margin:0;align-items:start}.notification-entry>img{width:148px;height:108px;object-fit:cover;border-radius:6px;border:1px solid #d3b66e40}.notification-entry h3{margin:7px 0}.notification-entry p{white-space:pre-wrap;overflow-wrap:anywhere}.notification-meta{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#a9b2b6}.notification-unread{border-left:3px solid #d8ba77;background:linear-gradient(100deg,#c3a05c12,transparent)}.notification-unread .notification-meta>span{color:#e7cb8c}.notification-tools .formrow{flex-wrap:wrap}.notification-entry button{margin:0}@media(max-width:540px){.notification-entry{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:16px}.notification-entry>img{width:76px;height:76px}.notification-meta{flex-wrap:wrap}.notification-entry .formrow{flex-wrap:wrap}}
