/* City library: same data and actions, compact illustrated cards. */
body.city-library-view .page-hero{display:none}
body.city-library-view .city-library-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin:0 0 22px}
body.city-library-view .city-library-heading h1{margin:0 0 6px}
body.city-library-view .city-library-heading>div{flex:1 1 380px}
body.city-library-view .city-library-heading p{margin:5px 0;max-width:720px}
body.city-library-view .city-view-switch{display:flex;gap:10px;flex-wrap:wrap}
body.city-library-view .city-view-switch .button{min-height:44px;padding:10px 16px;justify-content:center;text-align:center}
body.city-library-view .cities-dashboard{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(280px,1fr);gap:20px;align-items:start}
body.city-library-view .city-library-sidebar{order:2;min-width:0}
body.city-library-view .city-list-panel{order:1;min-width:0;margin:0;padding:18px}
body.city-library-view .cities-dashboard-public{grid-template-columns:minmax(0,1fr)}
body.city-library-view .city-add-panel{margin:0 0 18px;padding:0}
body.city-library-view .city-add-summary{display:list-item;cursor:pointer;padding:18px;font-weight:650}
body.city-library-view .city-add-body{padding:0 18px 18px}
body.city-library-view .city-add-body>.quiet{margin:0 0 16px}
body.city-library-view .city-quick-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
body.city-library-view .city-country-control{max-width:100%;min-width:0}
body.city-library-view .city-country-control select{width:100%;min-width:0}
body.city-library-view .city-new-visibility{align-items:flex-start}
body.city-library-view .city-new-visibility input{flex-shrink:0;margin-top:6px}
body.city-library-view .city-add-body #quick-country-visits{display:block;margin-top:16px}
body.city-library-view .city-library-sidebar .achievement-summary{margin:0}
body.city-library-view .city-filters{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;align-items:end;gap:12px;margin:0 0 14px}
body.city-library-view .city-filters>div{min-width:0}
body.city-library-view .city-filters input,body.city-library-view .city-filters select{width:100%;min-width:0}
body.city-library-view .city-filters .button{min-height:46px}
body.city-library-view .city-filters label{display:block;margin-bottom:5px}
body.city-library-view .visited-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.city-library-view .visited-city-card{padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--card,#fff);box-shadow:0 3px 12px #153d6b05;min-width:0}
body.city-library-view .city-card-main{display:block;text-decoration:none;min-width:0}
body.city-library-view .app-main .city-card-main h2{font-size:18px;line-height:1.4;margin:10px 4px 5px;color:var(--ink)}
body.city-library-view .city-illustration{display:block;width:100%;height:auto;aspect-ratio:8/5;border-radius:8px;background:#f0f3f5;color:#7d8e9e;overflow:hidden}
body.city-library-view .city-card-country{display:flex;gap:7px;align-items:center;margin:5px 4px 10px;min-width:0;color:var(--muted)}
body.city-library-view .city-card-country>span{min-width:0;overflow-wrap:anywhere}
body.city-library-view .city-card-country .city-card-flag{display:block;margin:0;flex:0 0 24px;width:24px;max-width:24px;height:18px;max-height:18px}
body.city-library-view .visited-city-card>.quiet{margin:8px 4px}
body.city-library-view .city-row-actions{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 4px 0}
body.city-library-view .city-row-actions button{min-height:36px;text-align:left}
body.city-library-view .city-pagination{margin-top:18px;flex-wrap:wrap;gap:10px}
body.city-library-view #cities-status:empty,body.city-library-view #quick-city-status:empty{display:none}
body.city-library-view .app-main [hidden]{display:none}
body.city-library-view .city-list-panel>.city-attribution{margin-top:18px}
html[data-ui-theme=dark] body.city-library-view .city-illustration{background:#192b3b;color:#8b9baa}
html[data-ui-theme=dark] body.city-library-view .visited-city-card{background:#102236;box-shadow:none}
@media(min-width:1180px){body.city-library-view .cities-dashboard-public .visited-city-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1179px) and (min-width:901px){body.city-library-view .visited-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){body.city-library-view .city-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body.city-library-view .city-filters .button{grid-column:1/-1}}
@media(max-width:900px){body.city-library-view .cities-dashboard{grid-template-columns:minmax(0,1fr)}body.city-library-view .city-library-sidebar{display:contents}body.city-library-view .city-library-sidebar>.city-add-panel{order:0}body.city-library-view .city-list-panel{order:1}body.city-library-view .city-library-sidebar .achievement-summary{order:2}body.city-library-view .visited-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){body.city-library-view .city-list-panel{padding:14px}body.city-library-view .visited-city-grid{grid-template-columns:minmax(0,1fr)}body.city-library-view .city-filters{grid-template-columns:minmax(0,1fr)}body.city-library-view .city-view-switch{width:100%}body.city-library-view .city-view-switch .button{flex:1 1 120px;padding:10px 6px}body.city-library-view .city-library-heading>div{flex-basis:100%}}

/* A narrow sidebar needs a full-width progress row beneath the emblem header. */
body.city-library-view .city-library-sidebar .achievement-summary{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px 12px;padding:18px}
body.city-library-view .city-library-sidebar .summary-emblem{grid-column:1;grid-row:1/span 3;padding:0}
body.city-library-view .city-library-sidebar .summary-emblem .club-emblem{width:64px;height:80px}
body.city-library-view .city-library-sidebar .achievement-copy{display:contents}
body.city-library-view .city-library-sidebar .achievement-copy>.eyebrow{grid-column:2;grid-row:1;margin:0;letter-spacing:.06em}
body.city-library-view .city-library-sidebar .achievement-copy>h2{grid-column:2;grid-row:2;margin:0;font-size:18px;line-height:1.4}
body.city-library-view .city-library-sidebar .achievement-copy>[data-earned-total]{grid-column:2;grid-row:3;margin:0}
body.city-library-view .city-library-sidebar .achievement-copy>:is(.achievement-next,progress,.achievement-declared,.achievement-view){grid-column:1/-1;margin:0}
body.city-library-view .city-library-sidebar .achievement-copy>.achievement-next{margin-top:8px}
body.city-library-view .city-library-sidebar .achievement-copy>progress{height:7px;margin:6px 0}
body.city-library-view .city-library-sidebar .achievement-copy>.achievement-declared{justify-self:start;max-width:100%}
body.city-library-view .city-library-sidebar .achievement-copy>.achievement-view{display:block;margin-top:4px}
