/* Shared site shell: gallery, library, Challenges and administration. */
:root{--shell-ink:#292d26;--shell-muted:#74796e;--shell-line:#e2e5dc;--shell-paper:#f9f8f4;--shell-green:#344b34;--shell-sage:#e8eddf;--sidebar-width:220px}
body{background:var(--shell-paper);color:var(--shell-ink);font-family:Arial,Helvetica,sans-serif}
body>header.site-header{height:auto;min-height:0;padding:22px 0!important;display:block;font:12px/1.5 Arial,sans-serif;border-bottom:1px solid var(--shell-line)}
body>header.site-header .wrap{width:calc(100% - 80px);max-width:1680px;margin:auto}
body>header.site-header .nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
body>header.site-header .brand{display:flex;align-items:center;gap:25px}
body>header.site-header a.logo{font:400 42px/1.25 Georgia,serif!important;letter-spacing:-2px!important;padding:0!important;display:block;color:var(--shell-ink);text-decoration:none}
body>header.site-header .brand-note{font:10px Arial,sans-serif;letter-spacing:2px;border-left:1px solid var(--shell-line);padding-left:25px;color:var(--shell-muted);margin:0;text-transform:uppercase}
body>header.site-header .site-navigation{display:flex;align-items:center;gap:25px}
body>header.site-header .account-menu{position:relative;margin:0;padding:0;border:0;width:auto;box-shadow:none;background:none;border-radius:0}
body>header.site-header .menu-toggle,body>header.site-header .admin-menu-toggle{margin:0!important;flex-shrink:0}
body>header.site-header nav.account-dropdown{position:absolute;top:calc(100% + 10px);right:0;left:auto;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;box-sizing:border-box;max-height:calc(100dvh - 120px);overflow:auto;min-width:0;z-index:60}
body>header.site-header nav.account-dropdown[hidden]{display:none!important}
body>header.site-header nav.account-dropdown a,body>header.site-header nav.account-dropdown button{display:block;box-sizing:border-box;width:100%;height:auto;min-height:40px;flex:0 0 auto;padding:11px 13px!important;margin:0;border:0;border-radius:4px;background:none;font:12px/1.5 Arial,sans-serif!important;color:var(--shell-ink);text-align:left;white-space:normal;text-decoration:none}
body>header.site-header nav.account-dropdown a:hover,body>header.site-header nav.account-dropdown button:hover{background:#ecefe5}
body>header.site-header nav.account-dropdown .menu-section-label{font:9px Arial,sans-serif;letter-spacing:1.6px;padding:17px 13px 7px;color:var(--shell-muted);margin:0}
body>header.site-header .menu-identity,body>header.site-header .admin-menu-account{border-top:1px solid var(--shell-line);margin:9px 0 0;padding:10px 0 0;display:block}
body>header.site-header .menu-identity p,body>header.site-header #username{font:11px/1.5 Arial,sans-serif;color:var(--shell-muted);margin:3px 13px;overflow-wrap:anywhere;display:block}
body>header.site-header .menu-identity p:empty{display:none}
body>header.site-header [hidden]{display:none!important}
.primary,button.primary,.secondary,button.secondary,.secondary-outline{border-radius:6px;font-family:Arial,sans-serif;font-size:13px;line-height:1.4;min-height:42px}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #728664;outline-offset:3px}
.album-sidebar,.admin-sidebar,.settings-sidebar{font-family:Arial,sans-serif;box-sizing:border-box;padding:8px 12px 16px 0}
.photo-workspace,.admin-workspace-layout{grid-template-columns:var(--sidebar-width) minmax(0,1fr);gap:28px}
.photo-workspace.sidebar-collapsed,.admin-workspace-layout.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}
.workspace-navigation{display:grid;gap:4px;border-bottom:1px solid var(--shell-line);padding-bottom:18px;margin-bottom:20px}
.workspace-navigation a,.settings-section-links a,.admin-sidebar nav a,#album-navigation button,.library-tree>summary{box-sizing:border-box;display:flex;align-items:center;text-align:left;gap:10px;font:12px/1.5 Arial,sans-serif!important;border-radius:6px!important;min-height:40px;padding:10px 13px!important;color:#626d59;text-decoration:none;margin:0}
.workspace-navigation a:hover,.settings-section-links a:hover{background:#eef0e8}
.workspace-navigation a[aria-current=page],.admin-sidebar nav a[aria-current=page],#album-navigation button[aria-current=page]{background:#e3ead8;color:#344b34;font-weight:600!important}
.library-new{box-sizing:border-box;background:#fff;border:1px solid var(--shell-line);border-radius:7px;box-shadow:none;min-height:44px;padding:11px 16px;font:13px Arial,sans-serif;margin:0 0 18px;gap:10px}
.library-new>span{font-size:23px}.library-tree{margin:6px 0!important}.library-tree-children{gap:3px}.library-root-drop{margin:7px 0!important;padding:10px!important}.sidebar-storage{margin-top:18px;padding-top:18px}.sidebar-storage>a{border-radius:6px}.settings-workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px}.settings-workspace-main{min-width:0;max-width:1100px}.settings-main{width:calc(100% - 80px)!important;max-width:1680px!important;padding:35px 0!important;margin:auto!important}.settings-sidebar{position:sticky;top:calc(var(--site-header-height,97px) + 25px);height:max-content}.settings-section-links{display:grid;gap:3px}.settings-sidebar .sidebar-eyebrow{font:9px Arial,sans-serif;letter-spacing:1.5px;color:#79816f;padding:0 13px;margin:20px 0 10px}.settings-back{display:none}.settings-card{border-radius:8px!important;border:1px solid var(--shell-line)!important;scroll-margin-top:calc(var(--site-header-height,97px) + 25px)}
.photo-workspace-main,.admin-workspace-main{border-radius:10px;background:#fff;border:1px solid var(--shell-line);box-shadow:none}.selection-toolbar{box-shadow:none!important;border-color:var(--shell-line)}
@media(max-width:1000px){body>header.site-header .wrap{width:calc(100% - 48px)}body>header.site-header .brand-note{display:none}.photo-workspace,.admin-workspace-layout{grid-template-columns:200px minmax(0,1fr);gap:20px}.settings-workspace{grid-template-columns:185px minmax(0,1fr);gap:22px}.settings-main{width:calc(100% - 48px)!important}}
@media(max-width:750px){.photo-workspace,.admin-workspace-layout{grid-template-columns:minmax(0,1fr)}.album-sidebar,.admin-sidebar{padding:16px;border:1px solid var(--shell-line);border-radius:8px;background:var(--shell-paper);max-height:60dvh}.settings-workspace{grid-template-columns:minmax(0,1fr)}.settings-sidebar{position:static;padding:0}.settings-sidebar .workspace-navigation{display:flex;flex-wrap:wrap;gap:4px;padding-bottom:12px;margin-bottom:15px}.settings-sidebar .settings-section-links{display:flex;flex-wrap:wrap;margin-bottom:20px}.settings-sidebar .sidebar-eyebrow{display:none}.settings-main{padding-top:22px!important}.library-new{margin-bottom:14px}}
@media(max-width:600px){body>header.site-header{padding:18px 0!important}body>header.site-header .wrap{width:calc(100% - 32px)}body>header.site-header a.logo{font-size:36px!important}body>header.site-header .site-navigation{gap:14px}body>header.site-header .nav-photo-link{display:none}body>header.site-header nav.account-dropdown{width:min(285px,calc(100vw - 32px))!important}.settings-main{width:calc(100% - 32px)!important}}
body>header.site-header .account-menu{top:auto;right:auto;bottom:auto;left:auto;transform:none}
#my-photos,#collection{scroll-margin-top:calc(var(--site-header-height,97px) + 24px)}
[hidden]{display:none!important}
#settings-content{display:grid;gap:18px}
.settings-workspace-main .settings-card{margin:0!important}
@media(min-width:751px){body>aside:has(>#side){width:220px}body:has(>aside>#side)>main{margin-left:220px}}
@media(min-width:751px) and (max-width:1000px){body>aside:has(>#side){width:200px}body:has(>aside>#side)>main{margin-left:200px}}
@media(max-width:750px){body>aside:has(>#side){position:relative;top:auto;width:100%;padding:0;border:0}body>aside>#side{display:none}body>aside.open>#side{display:block;padding:12px 20px;border-bottom:1px solid var(--shell-line)}body:has(>aside>#side)>main{margin-left:0}.challenge-help-row{display:flex;justify-content:space-between;padding-top:20px}.challenge-help-row #menu{display:block}}

/* Text-only sidebar navigation; disclosure arrows and action menus stay functional. */
#album-navigation .library-root::before,.library-tree-children button::before,.admin-sidebar .library-tree-children a::before,.admin-sidebar nav:not(.library-tree-children) a::before,.sidebar-storage .storage-label::before{content:none!important;display:none!important}
.album-sidebar .library-new>span,.admin-sidebar .library-new>span{display:none}
