/* A consistent silver/pink identity, with a real landscape behind the mascot. */
.brand > span { background:linear-gradient(180deg,#8b8396 2%,#484353 48%,#765166 82%,#ba86a1 100%); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:none; }
.brand .rat-word { color:inherit; }
.brand small { color:#7d6375; }
.brand i { color:#665967; }
.titlebar { background:linear-gradient(180deg,#fbfaff,#e2deed); color:#514c67; }
.neo-welcome > .titlebar { background:linear-gradient(90deg,#d3cede,#f4e0ec,#fdfbff); }
.welcome-collage { min-height:320px; background:linear-gradient(90deg,rgba(242,247,255,.94) 0%,rgba(242,247,255,.76) 32%,rgba(242,247,255,0) 70%),url("assets/green-field.jpg") center 61% / cover no-repeat; }
.welcome-collage > img { width:285px; right:8px; bottom:28px; filter:drop-shadow(0 9px 6px #1f3b274a); }
.owner-message { color:#3b4159; font-size:27px; max-width:320px; margin-bottom:100px; text-shadow:0 1px 2px #fff; }
.collage-links { display:inline-block; background:#ffffffe8; border:1px solid #bec5d2; border-radius:3px; padding:8px 10px; }
.collage-links a { color:#544962; }
.main-nav a { flex:1; text-align:center; font-family:Tahoma,sans-serif; }
.side-menu a { justify-content:flex-start; color:#514d62; }
.directory-side { margin-top:16px; }
.directory-side p,.directory-side > a { display:block; margin:12px 9px; font:11px/1.6 Tahoma,sans-serif; }
.collection-heading { color:#514b63; }
.album-invite { display:flex; align-items:center; gap:12px; padding:16px; border:1px solid #b8b1c8; background:linear-gradient(#fff,#e8e7f3); border-radius:4px; margin-bottom:20px; font:12px/1.6 Tahoma,sans-serif; }
.album-invite a { font-weight:bold; }
.album-invite small { display:block; margin-top:4px; overflow-wrap:anywhere; }
.album-tools { display:grid; grid-template-columns:auto minmax(80px,1fr) auto minmax(100px,150px); align-items:center; gap:8px; font:11px Tahoma,sans-serif; }
.album-tools input,.album-tools select { width:100%; min-width:0; padding:9px; font:11px Tahoma,sans-serif; border:1px solid #bcb3c9; border-radius:3px; background:#fff; color:#454052; }
.album-count { font:11px Tahoma,sans-serif; color:#71667d; margin:16px 0; }
.rat-card-title { display:block; font:bold 12px/1.5 Tahoma,sans-serif; text-decoration:none; }
.album-photo small { line-height:1.6; }
.album-empty { grid-column:1/-1; font:12px/1.8 Tahoma,sans-serif; padding:20px; border:1px solid #d3cbdc; background:#fff; }
.database-preview { grid-template-columns:1fr 1fr; padding:0; gap:14px; }
.database-preview .album-photo { padding:6px; }
.database-preview .photo-open img { width:100%; height:190px; margin:0; border:0; }
.database-preview figcaption { min-height:65px; }
.random-caption { padding:4px 9px 12px; font:11px/1.6 Tahoma,sans-serif; }
.random-caption > a { font-weight:bold; }
.random-caption small { display:block; margin:4px 0; font:9px/1.6 Tahoma,sans-serif; }
.text-button { display:inline-block; background:none; border:0; padding:5px 0; color:#694f7e; text-decoration:underline; cursor:pointer; font:10px Tahoma,sans-serif; }
.rat-permalink { display:inline-block; font:11px Tahoma,sans-serif; margin-top:18px; }
.contact-address { font-weight:bold; overflow-wrap:anywhere; }
.submission-list { margin:0; padding-left:20px; }
.submission-list li { padding:4px 0; }
.collection-body a { overflow-wrap:anywhere; }
:focus-visible { outline:2px solid #7b5895; outline-offset:3px; }
@media(max-width:680px) {
.brand > span { font-size:29px; }
.welcome-collage { min-height:360px; background-position:center,55% center; }
.welcome-collage > img { width:220px; bottom:35px; }
.owner-message { font-size:24px; max-width:260px; margin-bottom:165px; }
.album-tools { grid-template-columns:auto minmax(0,1fr); }
.database-preview .photo-open img { height:145px; }
.database-preview { gap:9px; }
.album-photo { min-width:0; }
.album-photo small { overflow-wrap:anywhere; }
}
