#view-clans.clan-city-enhanced { padding:0 !important; overflow:hidden; background:#070808; border-color:#202224; }
#view-clans.clan-city-enhanced > h2,
#view-clans.clan-city-enhanced > .clan-city-legacy-nav { display: none !important; }
.clan-city-shell { direction: rtl; min-height: 0; color: #ddd; font-family: Cairo, sans-serif; background: #050607; }
.clan-city-topbar { min-height:66px; padding:10px 18px; display:grid; grid-template-columns:minmax(220px,1fr) auto; align-items:center; gap:14px; border-bottom:1px solid #242628; background:#0a0b0c; }
.clan-city-identity { min-width: 0; }
.clan-city-eyebrow { color: #a98652; font-size: 11px; }
.clan-city-name { color: #f1d08a; font-size: 22px; line-height: 1.35; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.clan-city-stats { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-start; }
.clan-city-stat { min-width:88px; padding:6px 10px; border-right:1px solid #343638; background:#101112; }
.clan-city-stat span { display: block; color: #7f7c75; font-size: 10px; }
.clan-city-stat strong { color: #e8d7ae; font-size: 13px; }
.clan-city-map-stage { position:relative; width:min(100%,1536px); height:clamp(390px,calc(100vh - 390px),570px); margin:12px auto 0; overflow:hidden; border:1px solid #292b2d; background:#030405 url('/assets/ui/guild_city_map_v1.png?v=1.0.2') center/cover no-repeat; box-shadow:0 14px 34px rgba(0,0,0,.6); }
.clan-city-map { position: absolute; z-index: 0; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; image-rendering: auto; opacity: 1; visibility: visible; }
.clan-city-map-shade { position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(0,0,0,.22), transparent 25%, transparent 75%, rgba(0,0,0,.58)), radial-gradient(circle at 50% 42%, transparent 35%, rgba(0,0,0,.28) 100%); }
.clan-city-map-title { position: absolute; top: 20px; right: 24px; z-index: 2; max-width: 380px; padding-right: 12px; border-right: 3px solid #a46b2b; text-shadow: 0 2px 7px #000; }
.clan-city-map-title strong { display: block; color: #f0d38d; font-size: 20px; }
.clan-city-map-title span { color: #b0aaa0; font-size: 12px; }
.clan-city-hotspot { position:absolute; z-index:3; transform:translate(50%,-50%); display:grid; place-items:center; width:58px; height:58px; padding:0; border:1px solid #666159; border-radius:50%; color:#e3d4af; background:rgba(8,9,9,.94); box-shadow:0 0 0 5px rgba(0,0,0,.32); cursor:pointer; transition:.2s ease; }
.clan-city-hotspot::before { content: ''; position: absolute; inset: 7px; border: 1px solid rgba(255,220,145,.25); border-radius: 50%; }
.clan-city-hotspot:hover, .clan-city-hotspot:focus-visible { transform:translate(50%,-50%) scale(1.1); border-color:#cda75c; box-shadow:0 0 0 6px rgba(0,0,0,.4),0 0 18px rgba(205,167,92,.25); outline:none; }
.clan-city-hotspot.is-locked { filter: grayscale(.85); opacity: .65; }
.clan-city-hotspot-index { position:relative; font:800 16px Cairo,sans-serif; }
.clan-city-hotspot-label { position: absolute; top: 64px; right: 50%; transform: translateX(50%); width: max-content; max-width: 170px; padding: 5px 9px; border: 1px solid rgba(151,102,42,.45); color: #e8dcc3; background: rgba(3,4,4,.9); font-size: 12px; font-weight: 700; white-space: nowrap; }
.clan-city-hotspot-tooltip { position:absolute; z-index:20; right:66px; top:50%; transform:translateY(-50%); display:none; width:250px; padding:11px; border:1px solid #44474a; color:#aaa; background:rgba(8,9,10,.97); box-shadow:0 12px 30px rgba(0,0,0,.7); text-align:right; pointer-events:none; }
.clan-city-hotspot:hover .clan-city-hotspot-tooltip,.clan-city-hotspot:focus-visible .clan-city-hotspot-tooltip { display:block; }
.clan-city-hotspot-tooltip strong,.clan-city-hotspot-tooltip b,.clan-city-hotspot-tooltip small,.clan-city-hotspot-tooltip span { display:block; }
.clan-city-hotspot-tooltip strong { color:#e1d5bc; font-size:12px; margin-bottom:6px; }
.clan-city-hotspot-tooltip b { color:#c7c7c4; font-size:11px; margin-bottom:3px; }
.clan-city-hotspot-tooltip small { color:#b7985c; font-size:10px; padding-bottom:6px; margin-bottom:5px; border-bottom:1px solid #292b2d; }
.clan-city-hotspot-tooltip span { color:#626568; font-size:9px; line-height:1.8; }
.clan-city-hotspot-tooltip span.is-earned { color:#c5a35e; }
.clan-city-bonus-panel { position:absolute; z-index:4; right:14px; bottom:14px; width:min(340px,calc(100% - 28px)); padding:11px 12px; border:1px solid rgba(110,113,116,.5); background:rgba(8,10,11,.72); backdrop-filter:blur(7px); box-shadow:0 10px 28px rgba(0,0,0,.38); }
.clan-city-bonus-panel>strong { display:block; color:#dfd5bd; font-size:12px; margin-bottom:6px; }
.clan-city-bonus-panel>span { color:#86898b; font-size:10px; }
.clan-city-bonus-panel>div { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:4px 0; border-top:1px solid rgba(75,78,80,.35); font-size:9px; }
.clan-city-bonus-panel div span { color:#a5a7a8; }
.clan-city-bonus-panel div small { color:#65686a; }
.clan-city-bonus-panel div b { color:#c0a262; font-weight:700; white-space:nowrap; }
.clan-city-footer { position: absolute; z-index: 3; left: 16px; bottom: 14px; display: flex; gap: 6px; }
.clan-city-legend { padding: 7px 10px; border: 1px solid rgba(133,91,42,.55); color: #a8a39a; background: rgba(5,6,6,.86); font-size: 11px; }
.clan-city-content { display: none; min-height: calc(100vh - 280px); background: radial-gradient(circle at 85% 0, rgba(102,53,21,.12), transparent 38%), #070808; }
.clan-city-shell.is-inside .clan-city-map-stage { display: none; }
.clan-city-shell.is-inside .clan-city-content { display: block; }
.clan-city-shell.is-recruiting .clan-city-topbar,
.clan-city-shell.is-recruiting .clan-city-map-stage,
.clan-city-shell.is-recruiting .clan-city-content-head,
.clan-city-shell.is-recruiting .clan-city-tools { display:none !important; }
.clan-city-shell.is-recruiting .clan-city-content { display:block; min-height:0; background:#070808; }
.clan-city-shell.is-recruiting .clan-city-legacy-content { padding:0; }
.clan-city-shell.is-recruiting .clan-city-legacy-content > .guild-tab-content { max-height:none; overflow:visible; }
.guild-recruit-screen { padding:clamp(18px,3vw,42px); background:radial-gradient(circle at 50% 0,rgba(122,80,31,.11),transparent 46%),#070808; }
.guild-recruit-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; max-width:1120px; margin:0 auto; }
.guild-recruit-card { position:relative; min-height:380px; display:flex; flex-direction:column; padding:26px; overflow:hidden; border:1px solid #2d2f31; background:linear-gradient(145deg,rgba(20,21,22,.98),rgba(8,9,10,.98)); box-shadow:0 18px 44px rgba(0,0,0,.28); }
.guild-recruit-card::after { content:''; position:absolute; inset:auto 0 0; height:2px; background:linear-gradient(90deg,transparent,#9f7942,transparent); opacity:.65; }
.guild-recruit-mark { position:absolute; top:12px; left:20px; color:rgba(202,168,105,.13); font:900 76px/1 Georgia,serif; pointer-events:none; }
.guild-recruit-copy { position:relative; z-index:1; padding-left:70px; }
.guild-recruit-copy>span,.guild-join-directory header span { color:#8d7651; font-size:11px; font-weight:700; }
.guild-recruit-copy h3,.guild-join-directory h3 { margin:5px 0 7px; color:#ead9b5; font-size:24px; }
.guild-recruit-copy p,.guild-join-directory p { margin:0; color:#85827c; font-size:12px; line-height:1.9; }
.guild-create-form { position:relative; z-index:1; display:grid; gap:9px; margin-top:auto; }
.guild-create-form label { color:#88847c; font-size:11px; }
.guild-create-form input { width:100%; min-height:44px; padding:9px 12px; border:1px solid #3b3d3f; color:#eee; background:#080909; font:700 13px Cairo,sans-serif; outline:none; }
.guild-create-form input:focus { border-color:#9c7945; box-shadow:0 0 0 2px rgba(156,121,69,.12); }
.guild-create-cost { display:flex; justify-content:space-between; gap:12px; color:#777; font-size:11px; }
.guild-create-cost strong { color:#cbae75; }
.guild-recruit-action,.guild-directory-back { min-height:42px; padding:8px 16px; border:1px solid #5b4b35; color:#dfc58e; background:#141310; font:800 13px Cairo,sans-serif; cursor:pointer; transition:.18s ease; }
.guild-recruit-action:hover,.guild-directory-back:hover { border-color:#b28a4e; color:#fff0c5; background:#1b1812; }
.guild-recruit-action.is-primary { background:#2a1b0d; border-color:#916126; }
.guild-join-summary { display:grid; gap:1px; margin:auto 0 16px; background:#2a2c2e; border:1px solid #2a2c2e; }
.guild-join-summary>div { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; background:#0d0e0f; }
.guild-join-summary span { color:#74777a; font-size:10px; }
.guild-join-summary strong { color:#c8c3b8; font-size:11px; }
.guild-join-directory { max-width:1120px; margin:0 auto; border:1px solid #2d2f31; background:#0b0c0d; }
.guild-join-directory>header { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:18px 20px; border-bottom:1px solid #292b2d; }
.guild-join-directory h3 { margin-bottom:2px; font-size:20px; }
.guild-directory-list { min-height:300px; }
.guild-directory-row { display:grid; grid-template-columns:54px minmax(180px,1.5fr) repeat(3,minmax(90px,.55fr)) auto; align-items:center; gap:12px; padding:12px 16px; border-bottom:1px solid #202224; }
.guild-directory-row:hover { background:#101214; }
.guild-directory-rank { color:#8c7148; font:800 16px Cairo,sans-serif; text-align:center; }
.guild-directory-name strong { display:block; color:#ddd5c5; font-size:13px; }
.guild-directory-name span,.guild-directory-metric span { display:block; color:#686b6d; font-size:9px; }
.guild-directory-metric strong { display:block; color:#bbb8b1; font-size:11px; }
.guild-directory-state { color:#9b9d9f; font-size:10px; }
.guild-directory-open { color:#78a989; }
.guild-directory-view { min-height:34px; padding:5px 12px; border:1px solid #47494b; color:#cfc9bc; background:#111213; font:700 11px Cairo,sans-serif; cursor:pointer; }
.guild-directory-view:hover { border-color:#a58048; color:#efd99e; }
.guild-directory-pages { display:flex; justify-content:center; align-items:center; gap:10px; min-height:58px; padding:10px; }
.guild-directory-pages button { min-width:92px; min-height:34px; border:1px solid #414345; color:#c9c4b9; background:#111213; font:700 11px Cairo,sans-serif; cursor:pointer; }
.guild-directory-pages button:disabled { opacity:.3; cursor:not-allowed; }
.guild-directory-pages span { color:#777; font-size:11px; }
.clan-city-content-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:14px; padding:14px 18px; border-bottom:1px solid #282a2c; background:#0c0d0e; }
.clan-city-back,.clan-city-tab,.clan-city-action { min-height:38px; border:1px solid #3a3c3e; color:#d7d4cd; background:#141516; padding:7px 14px; font-family:Cairo,sans-serif; font-weight:700; cursor:pointer; }
.clan-city-back:hover,.clan-city-tab:hover,.clan-city-action:hover { border-color:#a9874c; color:#efd99e; background:#1a1b1c; }
.clan-city-action:disabled { opacity:.38; cursor:not-allowed; }
.clan-city-content-title strong { display: block; color: #f0d38d; font-size: 18px; }
.clan-city-content-title span { color: #817d76; font-size: 11px; }
.clan-city-subnav { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-start; }
.clan-city-tab.is-active { color: #fff0ba; border-color: #c78a38; box-shadow: inset 0 -2px #c78a38; }
.clan-city-tools { display:none; grid-template-columns:minmax(0,1.65fr) minmax(260px,.7fr); gap:12px; padding:12px 18px 0; }
.clan-city-tools.is-visible { display: grid; }
.clan-city-tool,.clan-building-upgrade,.clan-building-info { border:1px solid #292b2d; padding:14px; background:#0d0e0f; }
.clan-city-tool h4 { margin: 0 0 5px; color: #e3c27a; font-size: 14px; }
.clan-city-tool p { margin: 0 0 10px; color: #77736c; font-size: 11px; }
.clan-city-donate-row { display: flex; gap: 7px; }
.clan-city-input { min-width: 0; flex: 1; border: 1px solid #49341d; color: #fff; background: #050606; padding: 8px 10px; font: 700 13px Cairo, sans-serif; }
.clan-building-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#252729; }
.clan-building-summary>div { background:#111213; padding:10px 12px; }
.clan-building-summary span,.clan-building-upgrade-action span { display:block; color:#777b7f; font-size:10px; }
.clan-building-summary strong,.clan-building-upgrade-action strong { display:block; color:#dedbd2; font-size:16px; }
.clan-building-progress { height:7px; margin:12px 0; background:#1d1f20; overflow:hidden; }
.clan-building-progress i { display:block; height:100%; background:#ad8742; box-shadow:0 0 10px rgba(198,153,72,.35); transition:width .35s ease; }
.clan-city-milestones { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }
.clan-city-milestone { padding:8px; border:1px solid #2c2e30; background:#0a0b0c; filter:grayscale(1); opacity:.45; }
.clan-city-milestone span,.clan-city-milestone strong,.clan-city-milestone small { display:block; }
.clan-city-milestone span { color:#777; font-size:10px; }
.clan-city-milestone strong { color:#b8b8b8; font-size:10px; }
.clan-city-milestone small { color:#888; font-size:11px; }
.clan-city-milestone.is-reached { border-color:#7f693e; filter:none; opacity:1; animation:clanMilestone 2.4s ease-in-out infinite; }
.clan-city-milestone.is-reached strong,.clan-city-milestone.is-reached small { color:#d7b86f; }
@keyframes clanMilestone { 50% { box-shadow:0 0 12px rgba(190,146,69,.18); } }
.clan-building-upgrade-action { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:12px; padding-top:12px; border-top:1px solid #292b2d; }
.clan-building-upgrade-action small { color:#8f7a50; font-size:10px; }
.clan-building-info h4 { margin:0 0 6px; color:#d8c28d; }
.clan-building-info p { margin:0 0 12px; color:#86898b; font-size:11px; line-height:1.8; }
.clan-building-formula { padding:9px; border-right:2px solid #777; color:#aaa; background:#111213; font-size:11px; margin-bottom:12px; }
.clan-city-project { border-right: 2px solid #70481f; padding: 8px 10px; background: #080909; }
.clan-city-project strong { color: #ddd1b6; display: block; font-size: 12px; }
.clan-city-project small { display: block; min-height: 34px; color: #716e69; font-size: 10px; margin: 4px 0; }
.clan-city-project-meta { color: #c8a65f; font-size: 10px; margin-bottom: 6px; }
.clan-city-legacy-content { padding: 14px 18px 22px; }
.clan-city-legacy-content > .guild-tab-content { max-height: calc(100vh - 390px); overflow-y: auto; scrollbar-color: #6a431d #090909; }
.clan-city-toast { position: fixed; z-index: 100000; left: 50%; bottom: 28px; transform: translateX(-50%); min-width: 280px; max-width: 520px; padding: 12px 18px; border: 1px solid #916126; color: #ead8af; background: rgba(8,7,6,.96); box-shadow: 0 12px 40px #000; text-align: center; }

/* Warehouse: neutral structure, color reserved for actions and selected items. */
#guild-tab-warehouse { color:#d6d6d4; }
.guild-wh-toolbar,.guild-wh-column-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.guild-wh-toolbar { padding:0 0 12px; border-bottom:1px solid #292b2d; margin-bottom:12px; }
.guild-wh-toolbar strong,.guild-wh-column-head strong { display:block; color:#e0ded7; }
.guild-wh-toolbar span,.guild-wh-column-head span { display:block; color:#74777a; font-size:10px; }
.guild-wh-tabs { display:flex; gap:5px; }
.guild-wh-tabs .btn,.guild-wh-action { border:1px solid #3b3d3f !important; color:#bbb !important; background:#121314 !important; padding:6px 12px !important; }
.guild-wh-tabs .btn:hover,.guild-wh-action:hover { border-color:#9b804b !important; color:#e4cb91 !important; }
.guild-wh-layout { display:grid; grid-template-columns:1fr 1fr; gap:12px; direction:rtl; }
.guild-wh-column { min-width:0; display:flex; flex-direction:column; gap:8px; padding:12px; border:1px solid #292b2d; background:#0b0c0d; }
.guild-wh-head-actions { display:flex; align-items:center; gap:8px; }
.guild-wh-capacity { display:flex; align-items:center; gap:6px; }
.guild-wh-capacity>div { width:72px; height:5px; background:#222426; }
.guild-wh-capacity i { display:block; width:0; height:100%; background:#a88a50; }
.guild-wh-capacity span { color:#86898b; font-size:10px; }
.guild-wh-compartment { padding:9px; border:1px solid #222426; background:#080909; }
.guild-wh-gear-box { min-height:292px; }
.guild-wh-mats-box { max-height:190px; overflow:auto; }
.guild-wh-label { color:#85888b; font-size:10px; margin-bottom:7px; }
.guild-wh-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(64px,1fr)); gap:5px; align-content:start; }
#guild-tab-warehouse .item-card,#guild-tab-warehouse .empty-slot,#guild-tab-warehouse table,#guild-tab-warehouse td,#guild-tab-warehouse th { border-color:#2a2c2e !important; }
#guild-tab-warehouse .item-card.sell-selected { border-color:#b08c4d !important; box-shadow:inset 0 0 0 1px #b08c4d; }
.guild-boss-building-report { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:0 0 14px; border:1px solid #2c2e30; background:#2c2e30; }
.guild-boss-building-report>div { padding:9px 10px; background:rgba(10,11,12,.94); }
.guild-boss-building-report span { display:block; color:#74777a; font-size:9px; }
.guild-boss-building-report strong { display:block; color:#d2c6ad; font-size:12px; }
.guild-boss-building-report p { grid-column:1/-1; margin:0; padding:7px 10px; color:#9d8352; background:#101112; font-size:9px; }
@media (max-width: 900px) {
    .clan-city-topbar { grid-template-columns: 1fr; }
    .clan-city-stats { justify-content: stretch; display: grid; grid-template-columns: repeat(2,1fr); }
    .clan-city-map-stage { width: 100%; height: clamp(430px, calc(100vh - 300px), 540px); margin-top: 0; border-inline: 0; }
    .clan-city-map { object-position: center; }
    .clan-city-hotspot { width: 48px; height: 48px; }
    .clan-city-hotspot-label { top: 54px; font-size: 10px; }
    .clan-city-content-head { grid-template-columns: auto 1fr; }
    .clan-city-subnav { grid-column: 1 / -1; }
    .clan-city-tools,.guild-wh-layout { grid-template-columns:1fr; }
    .clan-building-summary { grid-template-columns:1fr; }
    .guild-boss-building-report { grid-template-columns:repeat(2,1fr); }
    .clan-city-legacy-content { padding: 10px; }
    .guild-recruit-choices { grid-template-columns:1fr; }
    .guild-directory-row { grid-template-columns:42px minmax(0,1fr) auto; }
    .guild-directory-metric,.guild-directory-state { display:none; }
}
@media (max-width: 560px) {
    .clan-city-map-stage { height: min(500px, calc(100vh - 255px)); min-height: 390px; }
    .clan-city-map-title { right: 12px; top: 12px; }
    .clan-city-map-title span { display: none; }
    .clan-city-hotspot-label { max-width: 110px; white-space: normal; text-align: center; line-height: 1.35; }
    .clan-city-footer { display: none; }
    .clan-city-bonus-panel { width:220px; max-height:150px; overflow:auto; }
    .clan-city-hotspot-tooltip { right:auto; left:54px; width:210px; }
}
