*{box-sizing:border-box}:root{color-scheme:dark;--bg:#0d0f12;--panel:#171a1f;--panel2:#20242b;--text:#f4f4f5;--muted:#a9afb8;--line:#2d323b;--accent:#f0c75e;--radius:14px}html{background:var(--bg)}body{margin:0;min-height:100vh;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:rgba(13,15,18,.94);backdrop-filter:blur(14px)}.header-inner{max-width:1500px;margin:0 auto;padding:14px 22px;display:flex;gap:24px;align-items:center;justify-content:space-between}.brand{text-decoration:none;display:flex;flex-direction:column;min-width:max-content}.brand-title{font-weight:750}.brand-subtitle{color:var(--muted);font-size:.8rem}.search-form{display:flex;width:min(620px,100%);gap:8px}.search-form input{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);padding:10px 12px;font-size:1rem}.search-form button{border:0;border-radius:10px;background:var(--accent);color:#151515;padding:10px 16px;font-weight:700;cursor:pointer}.page{max-width:1500px;margin:0 auto;padding:28px 22px 48px}.hero,.album-header{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:30px}.hero h1,.album-header h1{margin:0 0 6px;font-size:clamp(2rem,4vw,3.2rem)}.hero p,.album-header p{margin:0;color:var(--muted)}.hero-stats{color:var(--muted);white-space:nowrap}.year-section{margin:40px 0 54px}.year-heading{display:flex;gap:14px;align-items:baseline;border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:10px}.year-heading h2{margin:0;font-size:2rem}.year-heading span{color:var(--muted)}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.album-card{overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);text-decoration:none;transition:transform .15s ease,border-color .15s ease}.album-card:hover{transform:translateY(-2px);border-color:#505966}.album-cover{aspect-ratio:4/3;background:#111317;overflow:hidden}.album-cover img{display:block;width:100%;height:100%;object-fit:cover}.media-thumb img{display:block;width:100%;height:auto;object-fit:contain;background:#101216}.placeholder,.video-thumb{height:100%;display:grid;place-content:center;color:var(--muted)}.album-meta{padding:13px 14px 15px}.album-meta h3{margin:0 0 5px;font-size:1rem;line-height:1.3}.album-meta p{margin:0;color:var(--muted);font-size:.9rem}.breadcrumb{display:flex;gap:9px;margin-bottom:24px;color:var(--muted)}.breadcrumb a{text-decoration:none}.media-grid{columns:5 220px;column-gap:10px}.media-card{width:100%;min-width:0;margin:0 0 10px;padding:0;overflow:hidden;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer;break-inside:avoid;display:inline-block}.media-thumb{background:#101216;overflow:hidden;min-height:70px;position:relative}.video-thumb{gap:8px;aspect-ratio:16/9}.play-icon{font-size:2rem;color:var(--accent)}.media-caption{padding:8px 9px 9px;display:flex;flex-direction:column;min-width:0}.media-caption span,.media-caption small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-caption small{margin-top:3px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:30px}.pagination a{border-radius:9px;padding:9px 13px;background:var(--panel2);text-decoration:none}.empty-state{padding:24px;background:var(--panel);border-radius:var(--radius);color:var(--muted)}.site-footer{padding:30px 22px 40px;text-align:center;color:var(--muted);border-top:1px solid var(--line)}.lightbox[hidden]{display:none}.lightbox{position:fixed;z-index:1000;inset:0;background:rgba(0,0,0,.94);display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center}.lightbox-stage{width:100%;height:100vh;padding:36px 20px 70px;display:grid;place-items:center;position:relative}.lightbox-image,.lightbox-video{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain}.lightbox-title{position:absolute;bottom:22px;left:20px;right:20px;text-align:center;color:#ddd}.lightbox-close,.lightbox-nav{border:0;background:transparent;color:white;cursor:pointer;font-size:3rem}.lightbox-close{position:absolute;z-index:2;top:10px;right:18px}@media(max-width:700px){.header-inner{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px}.brand{align-items:center}.page{padding:20px 12px 36px}.hero,.album-header{align-items:flex-start;flex-direction:column}.hero-stats{white-space:normal}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.media-grid{columns:2;column-gap:6px}.album-meta{padding:10px}.media-caption{display:none}.media-card{margin-bottom:6px}.lightbox{grid-template-columns:42px minmax(0,1fr) 42px}.lightbox-nav{font-size:2.4rem}}

.media-thumb::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);
    transform:translateX(-100%);
    animation:thumbShimmer 1.4s infinite;
    pointer-events:none
}
.media-thumb:has(img)::before{animation-duration:1.8s}
.media-thumb img{position:relative;z-index:1}
@keyframes thumbShimmer{100%{transform:translateX(100%)}}

.search-form-advanced{
    max-width:850px
}
.search-form-advanced .search-main{
    min-width:220px
}
.search-form-advanced .year-input{
    width:92px;
    flex:0 0 92px
}
.active-filter{
    display:flex;
    gap:18px;
    justify-content:space-between;
    align-items:center;
    padding:12px 14px;
    margin:-10px 0 24px;
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--panel);
    color:var(--muted)
}
.active-filter a{
    color:var(--accent);
    text-decoration:none;
    white-space:nowrap
}
.lightbox-info{
    position:absolute;
    left:20px;
    right:20px;
    bottom:16px;
    text-align:center;
    text-shadow:0 1px 5px #000
}
.lightbox-title{
    position:static;
    font-weight:650;
    color:#eee
}
.lightbox-metadata{
    margin-top:4px;
    color:#bfc4ca;
    font-size:.88rem;
    line-height:1.35
}
@media(max-width:700px){
    .search-form-advanced{
        display:grid;
        grid-template-columns:1fr 1fr auto
    }
    .search-form-advanced .search-main{
        grid-column:1/-1;
        min-width:0
    }
    .search-form-advanced .year-input{
        width:100%;
        flex:auto
    }
    .active-filter{
        align-items:flex-start;
        flex-direction:column;
        gap:8px
    }
    .lightbox-metadata{
        font-size:.78rem
    }
}

.user-menu{display:flex;align-items:center;gap:10px;margin-left:auto;white-space:nowrap;font-size:.9rem;color:var(--muted)}
.user-menu a{color:var(--accent);text-decoration:none}
.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--bg)}
.login-page{width:min(430px,100%)}
.login-card{border:1px solid var(--line);border-radius:18px;background:var(--panel);padding:30px}
.login-brand{margin-bottom:24px;text-align:center}
.login-brand h1{margin:0 0 5px}
.login-brand p{margin:0;color:var(--muted)}
.login-form{display:grid;gap:16px}
.login-form label{display:grid;gap:7px;color:var(--muted);font-size:.92rem}
.login-form input{width:100%;border:1px solid var(--line);border-radius:10px;background:#101318;color:var(--text);padding:12px 13px;font-size:1rem}
.login-form button{border:0;border-radius:10px;background:var(--accent);color:#151515;padding:12px 16px;font-size:1rem;font-weight:750;cursor:pointer}
.login-error{padding:10px 12px;margin-bottom:16px;border-radius:9px;background:#3a1717;color:#ffd8d8}
@media(max-width:900px){.user-menu{order:3;justify-content:center;margin-left:0}}
