.library-view .hero, .library-view .search-section, .library-view .catalog, .library-view #movie-details, .library-view #rooms-panel { display: none; }
.topbar-actions { display:flex; gap:10px; align-items:center; }
#account-button { max-width:180px; }
#account-label { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.library-panel { padding-bottom:50px; }
.library-panel h1 { overflow-wrap:anywhere; }
.library-panel .search-box { margin-top:24px; }
.library-panel .room-list-item { margin:12px 0; }
.library-panel .room-list-item h2 { overflow-wrap:anywhere; }
.library-panel .room-list-item > div { min-width:0; }
.library-panel .room-list-item p { overflow-wrap:anywhere; }
.playlist-settings { margin:25px 0; }
.playlist-settings form { margin:18px 0; }
.playlist-movies { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:24px 0; }
.playlist-movie { display:flex; align-items:flex-start; gap:18px; padding:18px; background:#1b251f; border:1px solid #35483b; border-radius:12px; min-width:0; }
.playlist-cover { width:66px; flex-shrink:0; aspect-ratio:2/3; border-radius:5px; background:#25392c; overflow:hidden; }
.playlist-movie img { width:100%; aspect-ratio:2/3; object-fit:cover; border-radius:5px; background:#25392c; }
.playlist-movie > div { min-width:0; }
.playlist-movie h3 { margin:0 0 8px; overflow-wrap:anywhere; }
.playlist-movie p { color:#9eb5a5; font-size:12px; }
.playlist-movie .room-actions { gap:6px; }
.playlist-movie button { font-size:11px; padding:8px; }
.library-input, #account-dialog input, .playlist-settings input, .playlist-settings select, #playlist-create-dialog input, #playlist-create-dialog select, #playlist-add-dialog input, #playlist-add-dialog select, #room-playlist-dialog select, #playlist-token { display:block; width:100%; min-width:0; background:#121a15; color:#d4e6da; border:1px solid #42584a; border-radius:7px; padding:12px; font:inherit; margin:8px 0 16px; }
#account-dialog form + form { border-top:1px solid #35483b; margin-top:24px; padding-top:12px; }
#account-dialog .room-button, #account-dialog .quiet-button { margin:12px 0; }
.playlist-add-button { top:48px; font-size:19px; }
.details-actions .playlist-add-button { position:static; width:auto; height:auto; padding:12px; font-size:12px; }
.direct-link .playlist-add-button { position:static; }
.room-playlist { margin-bottom:24px; }
.room-playlist h2 { margin-bottom:14px; }
.room-playlist-list { max-height:380px; overflow:auto; padding:0; list-style:none; }
.room-playlist-list li { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-top:1px solid #35483b; }
.room-playlist-list strong { overflow-wrap:anywhere; }
.room-playlist-list small { display:block; color:#9eb5a5; margin:5px 0; }
@media(max-width:900px) { .playlist-movies { grid-template-columns:1fr; } }
@media(max-width:640px) { .topbar-label { display:none; } .topbar-actions { width:100%; justify-content:space-between; } #account-button { max-width:145px; } .playlist-movie { padding:12px; gap:12px; } .room-playlist-list li { align-items:flex-start; flex-direction:column; } }
[hidden] { display:none !important; }
.playlist-movie h3 a { color:inherit; text-decoration:none; }
.playlist-movie h3 a:hover { color:#e6b763; }
.playlist-cover { display:block; }
.playlist-watch { display:inline-flex; align-items:center; gap:5px; font-size:11px; padding:8px; text-decoration:none; }
.playlist-watch svg,.playlist-gear svg { width:16px; height:16px; }
.playlist-gear { padding:12px; }
.mode-switch { display:flex; gap:8px; border:0; padding:0; margin:0 0 20px; flex-wrap:wrap; }
.mode-switch legend { margin-bottom:12px; color:#a4b5aa; font-size:12px; }
.mode-switch label { display:flex; align-items:center; gap:8px; padding:10px 12px; border:1px solid #42584a; border-radius:8px; cursor:pointer; font-size:13px; }
.mode-switch label:has(:checked) { background:#364531; color:#f0c77c; border-color:#bf9c59; }
#playlist-add-dialog .mode-switch input { display:inline-block; width:auto; margin:0; accent-color:#e6b763; }
.context-banner { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 18px; border:1px solid #6e663c; border-radius:10px; background:#302e21; margin:8px 0 22px; font-size:13px; }
#impersonation-banner { border-color:#b26f56; background:#352920; }
.admin-view .hero,.admin-view .search-section,.admin-view .catalog,.collections-view .hero,.collections-view .search-section,.collections-view .catalog { display:none; }
.admin-panel,#collections-panel { padding-bottom:50px; }
.admin-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.admin-tabs [aria-pressed=true] { color:#f0c77c; border-color:#bf9c59; background:#303b29; }
.admin-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:20px 0; }
.admin-stats strong { display:block; font-size:30px; color:#e6b763; margin-bottom:8px; }
.admin-stats span,.admin-user small { color:#9eb5a5; font-size:12px; line-height:1.6; }
.admin-user { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:14px 0; overflow-wrap:anywhere; }
.admin-user h2 { margin-bottom:8px; }
.admin-user .room-actions { max-width:420px; }
.admin-log article { display:grid; gap:8px; padding:16px 0; border-bottom:1px solid #35483b; overflow-wrap:anywhere; }
.admin-log time,.admin-log span { color:#9eb5a5; font-size:12px; }
.admin-room,.admin-days > div { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:15px 0; border-bottom:1px solid #35483b; }
.admin-days span { font-size:12px; color:#9eb5a5; }
.collection-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:30px 0; }
.collection-tile { display:flex; flex-direction:column; justify-content:space-between; gap:32px; position:relative; min-height:235px; padding:28px; border:1px solid #425246; border-radius:16px; text-decoration:none; color:#f5efe3; transition:transform .2s,border-color .2s; overflow:hidden; }
.collection-tile:hover { transform:translateY(-3px); border-color:#d3b77b; }
.collection-tile > svg { position:absolute; right:26px; top:26px; width:24px; height:24px; }
.collection-number { font-family:Georgia,serif; font-size:48px; opacity:.5; }
.collection-tile h2 { font-size:25px; margin:0 0 10px; }
.collection-tile p { color:#c0c6bd; font-size:13px; line-height:1.6; margin:0; }
.tone-amber { background:radial-gradient(ellipse at 100% 0,#73603d 0,transparent 65%),#29291f; }
.tone-green { background:radial-gradient(ellipse at 100% 0,#3d6a4e 0,transparent 65%),#1c2d24; }
.tone-blue { background:radial-gradient(ellipse at 100% 0,#3e5676 0,transparent 65%),#202a33; }
.tone-rose { background:radial-gradient(ellipse at 100% 0,#764b53 0,transparent 65%),#30242a; }
.collection-results { margin-top:25px; }
@media(max-width:700px) { .admin-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } .admin-user,.context-banner,.admin-room,.admin-days > div { align-items:flex-start; flex-direction:column; } .collection-grid { grid-template-columns:1fr; gap:14px; } .collection-tile { min-height:190px; padding:22px; gap:20px; } .collection-tile h2 { font-size:23px; } }
@media(max-width:640px) {
  .sidebar { height:auto; min-height:105px; flex-direction:column; align-items:stretch; gap:10px; padding:12px 16px 10px; }
  .sidebar .brand { align-self:flex-start; font-size:23px; }
  .sidebar .brand img { width:27px; height:27px; }
  .sidebar nav { width:100%; gap:3px; justify-content:space-between; overflow-x:auto; }
  .sidebar .nav-item { flex:0 0 auto; font-size:9px; padding:8px 7px; }
}
