/* Targeted native behavior; original project styles remain the visual source. */
:root{font-family:Roboto,sans-serif}
[hidden]{display:none!important}
:where(img[width][height]){height:auto}
:focus-visible{outline:3px solid #efaf30;outline-offset:4px}
.archive-skip{position:fixed;left:12px;top:-100px;z-index:10001;padding:12px;background:#fff;color:#111}
.archive-skip:focus{top:8px}
#header{min-height:44px;background-color:#fff;z-index:1000}
#header .home_panel,#header .holder_wide{min-height:44px}
#header .logo-holder{position:relative;min-height:44px}
#header .logo{margin:0!important;position:relative!important;left:auto!important;top:auto!important;min-height:44px;width:100%!important;max-width:none!important}
#header .logo a{display:block;width:min(412px,calc(100% - 32px))!important;height:44px;margin:0 auto;background-position:center;background-size:contain;background-repeat:no-repeat}
#filter{font:inherit;cursor:pointer}
#form-ui select,#reset,#filter{min-height:44px}
#form-ui[hidden]{display:none!important}
.gallery-result{font:400 14px/1.4 Roboto,sans-serif;padding:8px 0;margin:0 0 8px}
#container{--gallery-gap:10px;--gallery-card-width:270px}
#container.native-masonry{position:relative}
#container.native-masonry>.item{position:absolute!important;margin:0!important;padding:0!important;transform:none!important;transition:none!important;box-sizing:border-box}
#container .item>a{display:block}
#container .item img{display:block;width:100%!important;height:auto!important;max-width:100%;object-fit:contain}
#container .item a:focus-visible{outline-offset:2px;position:relative;z-index:2}
#gallery-empty{line-height:1.5;scroll-margin-top:80px}
#gallery-empty:not([hidden]){display:block}
#photo-dialog{box-sizing:border-box;width:min(1200px,96vw);max-width:96vw;height:min(940px,94dvh);max-height:94dvh;margin:auto;border:0;padding:16px;color:#fff;background:#111;overflow:auto;font:400 16px/1.5 Roboto,sans-serif}
#photo-dialog::backdrop{background:rgba(0,0,0,.9)}
#photo-dialog[open]{display:flex;flex-direction:column;gap:12px}
.photo-dialog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex:0 0 auto}
#photo-position{margin:0}
#photo-dialog figure{margin:0;display:flex;flex:1;min-height:0;flex-direction:column;gap:12px}
.photo-stage{display:flex;align-items:center;justify-content:center;position:relative;flex:1;min-height:100px;overflow:hidden}
#dialog-photo{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
#photo-caption{flex:0 0 auto;max-height:24dvh;overflow:auto;padding:2px}
.photo-size-note{font:400 12px/1.5 Roboto,sans-serif;color:#aaa;margin:0;flex:0 0 auto}
#photo-caption em{display:block;color:#ccc;font-size:13px;margin-top:5px}
.photo-status{position:absolute;background:#111d;color:#fff;max-width:90%;text-align:center;padding:8px;margin:0}
.photo-status:empty{display:none}
#photo-dialog nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex:0 0 auto}
#photo-dialog button,#photo-original{font:inherit;color:#fff;min-height:44px;border:1px solid #777;background:#222;padding:8px 12px;cursor:pointer;border-radius:0;transition:background-color .25s}
#photo-original{display:flex;align-items:center;font-size:13px;text-decoration:underline}
#photo-dialog button:hover,#photo-original:hover{background:#444}
#back-to-top{font:700 22px/44px Roboto,sans-serif;text-align:center;min-width:44px;min-height:44px}
@media(max-width:768px){#header .logo a{width:206px!important;max-width:calc(100% - 32px)}#photo-dialog{padding:10px;font-size:14px;gap:8px}#photo-dialog nav{gap:6px}#photo-dialog nav button{padding:8px}#photo-original{font-size:11px;padding:6px}#container{--gallery-card-width:170px}}
@media(prefers-reduced-motion:reduce){#photo-dialog *{transition:none!important}}

/* Match the original editorial italic using the hosted Google family. */
.sideBar h2 em,#gallery-empty{font-style:italic}

/* Native filter disclosure replaces the source off-canvas script. */
@media(max-width:767px){.sideBar #form-ui{width:100%;padding:0 20px;box-sizing:border-box}.sideBar #form-ui form{position:static;transform:none!important;width:100%;box-sizing:border-box;box-shadow:none;padding:16px 0}.sideBar #form-ui .row{padding-bottom:16px}#filter{color:#fff;background:transparent;border:1px solid #666;padding:8px 14px}}
