/* A12.4 — full-size image view, Russia regions directory, clear-all controls */
.filter-clear{width:42px;height:42px;flex:0 0 42px;display:inline-grid;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:12px;font-size:25px;font-weight:400;line-height:1;transition:color .15s,border-color .15s,background .15s}
.filter-clear:hover{color:#dd4a62;border-color:#efacb6;background:var(--surface-soft)}
.filter-clear:focus-visible{outline:3px solid #73aaff;outline-offset:2px}
.region-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.region-toolbar .search-box{flex:2 1 300px;min-width:210px}
.region-toolbar select{flex:1 1 150px;max-width:260px}
.regions-footnote{color:var(--muted);font-size:12px;margin:0 0 17px;line-height:1.7}
.world-date-link{grid-template-columns:1fr auto;gap:6px 12px;align-content:start;align-items:center;padding:13px 15px}
.world-date-link .world-date-badge{grid-column:1/-1;justify-self:start;display:inline-flex;align-items:center;min-height:27px;border-radius:9px;background:#e7f2ff;color:#166dce;font-size:14px;line-height:1.1;font-weight:800;letter-spacing:-.01em;padding:5px 11px}
.world-date-country{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted)}
.world-date-country img{width:28px;height:19px;object-fit:cover;border:1px solid var(--line);border-radius:3px;box-shadow:0 2px 3px rgba(10,32,76,.1)}
.world-date-country span{font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.world-date-link>b{grid-column:1;font-size:12px}
.world-date-link .world-date-arrow{grid-column:2;font-size:18px;color:var(--blue)}
[data-theme="dark"] .world-date-link .world-date-badge{background:#214263;color:#b0d3ff}
.gallery-main>img[data-action="gallery-expand"]{cursor:zoom-in}
.gallery-expand{position:absolute;left:14px;top:14px;z-index:3;width:44px;height:44px;display:grid;place-items:center;background:rgba(255,255,255,.95);color:#1e466c;border:1px solid rgba(255,255,255,.9);border-radius:13px;box-shadow:0 5px 20px rgba(21,45,85,.13)}
.gallery-expand:hover{background:#fff;color:#126bec}
.gallery-expand svg{width:22px;height:22px}
.image-lightbox{border:0;position:fixed;inset:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;background:#07101f;color:#fff;padding:0;overflow:hidden}
.image-lightbox::backdrop{background:rgba(0,0,0,.94)}
.lightbox-shell{height:100%;width:100%;display:flex;flex-direction:column;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.lightbox-top{flex:0 0 58px;padding:9px clamp(14px,3vw,35px);display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(7,16,31,.96)}
.lightbox-top span{font-size:15px;font-weight:800;letter-spacing:.08em}
.lightbox-close{width:41px;height:41px;border:1px solid #42546d;border-radius:13px;color:white;background:#1a2b42;font-size:27px;line-height:1;display:grid;place-items:center}
.lightbox-close:hover{background:#314764}
.lightbox-stage{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:hidden;padding:3px clamp(14px,5.4vw,95px)}
.lightbox-stage img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;object-position:center;user-select:none;-webkit-user-drag:none}
.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:47px;height:60px;display:grid;place-items:center;border:1px solid #334b68;background:rgba(21,40,64,.9);color:white;border-radius:13px;font-size:36px;line-height:1}
.lightbox-arrow:hover{background:#365879}
.lightbox-prev{left:clamp(5px,1.5vw,24px)}.lightbox-next{right:clamp(5px,1.5vw,24px)}
.lightbox-hint{padding:7px 12px 13px;flex:0 0 37px;text-align:center;color:#a4b8d2;font-size:11px;background:rgba(7,16,31,.96)}
@media(max-width:800px){
 .region-toolbar .search-box{flex-basis:100%;min-width:0}
 .region-toolbar select{flex:1 1 calc(33.333% - 10px);max-width:none;min-width:100px}
 .filter-clear{width:43px;height:43px}
 .lightbox-arrow{width:34px;height:46px;font-size:29px;border-radius:9px}
 .lightbox-stage{padding-inline:39px}
 .gallery-expand{width:40px;height:40px;left:10px;top:10px}
 .gallery-expand svg{width:21px;height:21px}
 .lightbox-hint{font-size:10px;flex-basis:32px}
}
@media(max-width:480px){
 .region-toolbar select{flex:1 1 calc(50% - 14px)}
 .region-toolbar .filter-clear{flex:0 0 43px}
 .lightbox-stage{padding-inline:35px}
 .lightbox-top{flex-basis:54px}
 .world-date-country span{max-width:230px}
}
/* Override the older generic first-child date label rule. */
.world-date-link span.world-date-badge{font-size:15px;line-height:1.2;font-weight:800;padding:6px 12px}

/* Readable city population facts; same source values as the Android/common API. */
.city-population-badge{font-size:12px!important;letter-spacing:0;white-space:normal;line-height:1.4}
.population-card{background:linear-gradient(125deg,#eff6ff,#f7f9ff);border:1px solid #dbe7fb;border-radius:17px;padding:20px 24px;color:var(--ink);margin-top:11px}
.population-main{display:flex;align-items:baseline;flex-wrap:wrap;gap:9px 13px}
.population-main strong{font-size:clamp(26px,3vw,35px);font-weight:800;letter-spacing:-.035em;line-height:1.25;font-variant-numeric:tabular-nums}
.population-main>span{font-size:14px;color:var(--muted);font-weight:700}
.population-card p{white-space:normal;line-height:1.6}
.population-period{margin:12px 0 0;font-size:13px;font-weight:700;color:var(--ink)}
.population-note,.population-scope{font-size:12px;color:var(--muted);margin:8px 0 0}
.population-scope{padding-top:10px;border-top:1px solid #dce8f5}
.population-empty p{margin:0;color:var(--muted);font-size:13px}
[data-theme="dark"] .population-card{background:linear-gradient(125deg,#223552,#202b43);border-color:#40526e}
[data-theme="dark"] .population-scope{border-color:#3c4e69}
.seo-population .population-card .population-main strong{color:var(--ink)}
@media(max-width:600px){.population-card{padding:17px 18px}.population-main strong{font-size:29px}}
