/* A city is a compact atlas entry, not a full-size palace management window. */
html body .room-experience dialog.castle-city-sheet[data-city-sheet="compact"]{
 position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;margin:0!important;
 width:min(520px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;
 height:auto!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;
 padding:0!important;box-sizing:border-box;overflow:hidden!important;
 border:3px double #aa8b59!important;border-radius:3px!important;
 background:#111b2a!important;color:#f2e6d0!important;
 box-shadow:0 18px 80px #000b,0 0 0 1px #0a101b!important;
}
html body .room-experience dialog.castle-city-sheet[data-city-sheet="compact"][open]{display:flex!important;flex-direction:column!important}
html.landscape-desktop body .room-experience dialog.castle-city-sheet[data-city-sheet="compact"][open]{inset:50% auto auto 50%!important;margin:0!important;transform:translate(-50%,-50%) scale(var(--desktop-scale))!important;transform-origin:center!important;max-height:688px!important}
html body .room-experience .castle-city-sheet>header{min-height:43px;padding:5px 12px;gap:10px;font-size:14px;line-height:1.3;flex:0 0 auto;background:#111b2a}
html body .room-experience .castle-city-sheet>header>span{min-width:0;color:#f2e2bf}
html body .room-experience .castle-city-sheet>header button{flex:none;min-height:32px;padding:5px 9px;font-size:12px}
html body .room-experience .castle-city-sheet .conquest-detail{display:block!important;flex:0 1 auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;box-sizing:border-box;padding:0!important;margin:0!important;overflow:auto!important;overscroll-behavior:contain;background:#111b2a!important;color:#e9e1d3!important;scrollbar-width:thin}
.city-sheet-content{min-width:0;background:#111b2a;color:#e9e1d3}
.city-sheet-hero{height:142px;position:relative;overflow:hidden;background:#202f42;border-bottom:1px solid #8e7950}
.city-sheet-hero>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 47%;filter:none!important;opacity:1!important}
.city-sheet-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#08101bd9,#0c14257d 65%,#0e16231a),linear-gradient(0deg,#101a2ae0,transparent 80%);pointer-events:none}
.city-sheet-identity{position:absolute;z-index:1;inset:auto 16px 14px;display:flex;align-items:center;gap:12px;min-width:0}
.city-sheet-identity>div{min-width:0}
.city-sheet-province{display:block;color:#f0d8a9;font-size:12px;line-height:1.4;letter-spacing:.3px}
html body .room-experience .castle-city-sheet .city-sheet-identity h3,.city-sheet-identity h3{margin:3px 0!important;font:700 29px/1.2 var(--serif,serif)!important;color:#fff3dd!important;text-shadow:0 2px 8px #000}
html body .room-experience .castle-city-sheet .city-sheet-identity h3 small,.city-sheet-identity h3 small{display:inline!important;margin-left:7px!important;font-size:17px!important;color:#dec79e!important;letter-spacing:2px}
.city-sheet-owner{font-size:13px;color:#e1e7ef;line-height:1.4}
.city-sheet-identity .conquest-detail-flag{width:42px;height:60px;box-sizing:border-box;line-height:1;filter:drop-shadow(0 2px 4px #0008)}
.city-sheet-identity .conquest-detail-flag-double{font-size:17px;line-height:1.1;gap:1px}
.city-sheet-main{padding:12px 16px 14px;min-width:0}
.city-sheet-status{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 8px;margin-bottom:9px;font-size:11px;line-height:1.4;color:#b9c9dc}
.city-sheet-status .residence-city-tags{display:flex;gap:5px;margin:0;padding:0}
.city-sheet-status .residence-city-tags span{margin:0;padding:2px 5px;font-size:10px;line-height:1.3}
.city-sheet-status .residence-city-tags i{font-size:11px}
.city-sheet-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 10px}
.city-sheet-metrics>div{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:8px;border:1px solid #52627a;background:linear-gradient(135deg,#233247,#152131)}
.city-sheet-metrics dt{margin:0;font-size:11px;line-height:1.3;color:#c4d2e3;white-space:nowrap}
.city-sheet-metrics dd{margin:0;font:700 22px/1 var(--serif,serif);color:#ffedcd}
.city-sheet-routes{margin:0}
html body .room-experience .castle-city-sheet .city-sheet-routes .conquest-connections{padding:0;border:0}
html body .room-experience .castle-city-sheet .city-sheet-routes dt{margin:0 0 5px;color:#bbcadf;font-size:11px;line-height:1.4}
html body .room-experience .castle-city-sheet .city-sheet-routes dd{display:flex;flex-wrap:wrap;gap:5px;margin:0;min-width:0}
html body .room-experience .castle-city-sheet .city-sheet-routes button{display:inline-flex;align-items:center;justify-content:center;min-width:43px;min-height:32px;padding:5px 9px;margin:0;background:#1c2a3e;color:#eee3ce;border:1px solid #52627a;line-height:1.2;font-size:12px;white-space:nowrap}
.city-sheet-routes button small{display:none}
html body .room-experience .castle-city-sheet :is(.city-sheet-alert,.city-sheet-pressure){display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 0!important;padding:6px 8px;background:#26344a;border:1px solid #5c6c81;color:#dfd8ca!important;font-size:11px!important;line-height:1.4!important}
html body .room-experience .castle-city-sheet .city-sheet-alert{background:#39262c;color:#f0c7bf!important;border-color:#885c5e}
.city-sheet-pressure span{color:#b9c9df;font-size:11px}
.city-sheet-more{margin:10px 0 0;padding:0;border-top:1px solid #526176;color:#c6d2e2;font-size:12px}
.city-sheet-more>summary{cursor:pointer;padding:9px 1px 0;min-height:27px;line-height:1.4;box-sizing:border-box;color:#c6d2e2}
.city-sheet-records{margin-top:10px;padding-top:8px;border-top:1px solid #48556a}
.city-sheet-records :is(p,dt,dd,summary){color:#cbd3df!important}
.city-sheet-records a{color:#dcc38f!important}
/* Historical notes stay available in the explicit disclosure. */
html body .room-experience .castle-city-sheet .city-sheet-records :is(.conquest-history,.conquest-placement-note,.conquest-route-notes,.conquest-detail-copy,.city-grade-card details,.city-force-total,.historical-banner,.faction-court-art,.frontier-map-note){display:block!important}
html body .room-experience .castle-city-sheet .city-sheet-records> :is(.residence-city-tags,.conquest-detail-heading,.conquest-facts,.conquest-choice-link){display:none!important}
html body .room-experience .castle-city-sheet .city-sheet-records :is(.city-grade-card,.conquest-placement-note){background:#19283b!important;color:#d4dbe5!important;border-color:#556277!important}
html body .room-experience .castle-city-sheet .conquest-choice-link{display:flex;align-items:center;justify-content:space-between;gap:10px;box-sizing:border-box;margin-top:10px;min-height:42px;padding:8px 12px!important;background:linear-gradient(#294362,#192e48)!important;color:#fff0d0!important;border:1px solid #b89b65!important;font:600 14px/1.3 var(--serif,serif)!important}
html body .room-experience .castle-city-sheet .conquest-choice-link span{font-size:20px;line-height:1}
html body .room-experience .castle-city-sheet.is-camp .conquest-detail{padding:12px 16px!important}
@media(max-width:700px){
 html body .room-experience dialog.castle-city-sheet[data-city-sheet="compact"]{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
 .city-sheet-hero{height:120px}
 .city-sheet-identity{inset:auto 12px 11px;gap:10px}
 .city-sheet-main{padding:10px 12px 12px}
 .city-sheet-metrics{gap:5px}
 .city-sheet-metrics>div{padding:7px 6px;gap:3px}
 .city-sheet-metrics dt{font-size:10px}
 .city-sheet-metrics dd{font-size:20px}
}
@media(min-width:701px) and (max-height:500px){
 html body .room-experience dialog.castle-city-sheet[data-city-sheet="compact"]{width:min(650px,calc(100vw - 24px))!important;max-height:calc(100dvh - 20px)!important}
 .castle-city-sheet .city-sheet-content{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:stretch}
 .castle-city-sheet .city-sheet-hero{height:auto;min-height:225px;border-bottom:0;border-right:1px solid #8e7950}
 .castle-city-sheet .city-sheet-hero>img{position:absolute;inset:0;object-position:center}
 .castle-city-sheet .city-sheet-identity{inset:auto 12px 14px;gap:8px}
 html body .room-experience .castle-city-sheet .city-sheet-identity h3{font-size:25px!important}
 .castle-city-sheet .city-sheet-province{font-size:11px}
 .castle-city-sheet .city-sheet-main{padding:10px 12px}
}
