/* Review 617: desktop case browser. Phone and tablet rules stay unchanged. */
.desktop-case-label617,.desktop-panel-heading617,.desktop-meta617,.desktop-selector617,.desktop-digital-tab617 { display:none; }
.desktop-case-art618,.desktop-row-poster618 { display:none; }
@media (min-width:1000px) {
  .site { max-width:1240px; padding:0 22px 26px; }
  .hero { width:100%; max-width:100%; margin:22px auto 18px; padding:4px; border-radius:10px; }
  .main-shell { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:0 12px; max-width:1200px; padding:0; margin:0 auto; }
  .main-shell > * { grid-column:1 / -1; min-width:0; }
  .main-shell > .search-wrap { grid-column:1; position:static; margin:0 0 18px; padding:0; box-shadow:none; }
  .main-shell > .archive-tools { grid-column:2; display:flex; width:auto; gap:10px; margin:0 0 18px; }
  #search { min-height:46px; height:46px; padding:0 48px 0 42px; border-width:1px; font-size:17px; box-shadow:none; }
  .search-icon { left:15px; width:19px; height:19px; }
  #clear { right:4px; width:38px; height:38px; font-size:25px; }
  .archive-tools > .tool-button { flex:0 0 auto; width:auto; height:46px; min-height:46px; padding:8px 17px; gap:8px; font-size:12px; letter-spacing:.05em; }
  .archive-tools .tool-icon558 { width:19px; height:19px; flex-basis:19px; }
  .archive-tools .watch-count558 { margin-left:0; }
  .results-summary { margin:0 0 12px; font-size:12px; letter-spacing:.06em; }
  #library { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; scroll-margin-top:16px; }
  #library > .case { display:contents; perspective:none; }
  #library .case-header { order:var(--tile-order617); min-width:0; border-radius:12px; box-shadow:0 2px 4px #173d6512; transform:none; filter:none; transition:box-shadow .15s; will-change:auto; }
  #library .case.open .case-header { transform:none; filter:none; box-shadow:0 0 0 2px #f8fafb,0 0 0 4px #b59b68; }
  #library .case-header:hover { transform:none; box-shadow:0 2px 8px #173d6526; }
  #library .case.open .case-header:hover { box-shadow:0 0 0 2px #f8fafb,0 0 0 4px #b59b68; }
  #library .case-button { min-height:80px; height:100%; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:16px 18px; }
  .case-title-wrap { padding:0; }
  #library .case-title { display:none; }
  .desktop-case-label617 { display:flex; flex-direction:column; gap:5px; }
  .desktop-case-name617 { font-size:16px; font-weight:850; line-height:1.2; letter-spacing:.055em; }
  .desktop-case-genre617 { font-size:12px; font-weight:550; line-height:1.3; letter-spacing:.01em; }
  #library .case-meta { padding:0; gap:0; }
  #library .case-count { display:flex; flex-direction:column; align-items:flex-end; gap:3px; font-size:27px; line-height:1; }
  #library .case-count-label { font-size:9px; letter-spacing:.1em; }
  #library .case-header .chevron { display:none; }
  #library .title-shell { display:none; grid-column:1 / -1; order:var(--panel-order617); min-width:0; transition:none; }
  #library .case.open > .title-shell { display:block; }
  #library .case.open .title-list { display:grid; grid-template-columns:minmax(0,1fr); gap:0 20px; min-width:0; margin:4px 0 6px; padding:18px 20px; border:1px solid #cbd5dc; border-left:4px solid var(--case-accent617); border-radius:12px; box-shadow:none; transform:none; will-change:auto; }
  .title-list > :not(.movie-wrap):not(.series603) { grid-column:1 / -1; }
  .desktop-panel-heading617 { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 14px; scroll-margin-top:16px; }
  .desktop-panel-heading617 h3 { margin:0; font-size:20px; line-height:1.25; color:#173d65; }
  .desktop-back617 { flex:none; min-height:36px; border:1px solid #cbd5dc; border-radius:7px; padding:7px 10px; color:#173d65; background:#eef3f7; font-family:inherit; font-weight:600; font-size:12px; cursor:pointer; }
  .desktop-back617:hover { background:#e1eaf1; }
  #library .case-group-selector { display:flex; justify-content:flex-start; flex-wrap:wrap; gap:8px; padding:0; margin:0 0 12px; }
  #library .case-group-tab { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:2px; width:auto; min-width:115px; min-height:42px; padding:7px 12px; border:1px solid #bfceda; border-radius:7px; color:#173d65; background:#edf3f7; box-shadow:none; font-size:12px; }
  #library .case-group-tab.active { color:#fff; background:#173d65; border-color:#173d65; }
  #library .case-group-name { font-size:11px; }
  #library .case-group-count { font-size:9px; }
  #library .watched-toolbar582 { margin:0 0 12px; }
  #library .case-group-content,.desktop-physical617,.digital-group584,.series-members603 { display:grid; grid-template-columns:minmax(0,1fr); gap:0 20px; min-width:0; }
  #library .subsection-heading { grid-column:1 / -1; padding:10px 12px; margin:10px 0; font-size:12px; }
  #library .movie-wrap { min-width:0; align-self:start; }
  #library .movie { min-height:60px; padding:10px 4px; font-size:15px; color:#173d65; }
  #library .movie-wrap:not(.details-open) .dot,#library .movie-wrap:not(.details-open) .format-badge { display:none; }
  #library .movie-wrap:not(.details-open) .location-line { font-size:11px; font-weight:500; }
  .desktop-meta617 { display:block; margin-top:4px; font-size:12px; line-height:1.3; font-weight:400; color:#657680; }
  .movie-wrap.details-open .desktop-meta617 { display:none; }
  #library .info-chevron { width:7px; height:7px; border-width:1.5px; transform:rotate(-45deg); }
  #library .series603 { margin:6px 0 10px; min-width:0; align-self:start; }
  #library .franchise-toggle603 { min-height:60px; padding:12px; font-size:14px; }
  #library .franchise-toggle603 small { font-size:10px; }
  #library .series-open603 { grid-column:1 / -1; }
  #library .series-members603 { padding:4px 12px 10px; }
  #library .series603 + .movie-wrap { margin-top:0; }
  #library .movie-wrap.details-open { grid-column:1 / -1; max-width:none; margin:10px 0 14px; }
  #library .movie-wrap.details-open > .movie { padding:0 0 5px; min-height:0; font-size:27px; }
  #library .movie-wrap.details-open .info-chevron { width:12px; height:12px; border-width:3px; transform:rotate(225deg); }
  .title-list:not(.desktop-digital617) > .digital-group584 { display:none; }
  .title-list.desktop-digital617 > :is(.case-group-content,.desktop-physical617,.movie-wrap,.series603,.subsection-heading) { display:none!important; }
  .title-list.desktop-digital617 > .digital-group584 { display:grid; }
  .desktop-context617 .title-list > .digital-group584 { display:grid; }
  #library.desktop-context617 { display:block; }
  #library.desktop-context617 > .case { display:block; margin-bottom:18px; }
  #library.desktop-context617 .case-header { width:100%; }
  #library.desktop-context617 .case-button { min-height:64px; padding:12px 18px; }
  #library.desktop-context617 .case-title-wrap { flex:1; }
  #library.desktop-context617 .desktop-case-label617 { flex-direction:row; align-items:baseline; gap:12px; }
  #library.desktop-context617 .case-count { flex-direction:row; align-items:baseline; gap:6px; font-size:22px; }
  #library.desktop-context617 .title-list { margin-top:10px; }
  #library.desktop-context617 .desktop-panel-heading617 h3 { display:none; }
  #library.desktop-context617 .desktop-panel-heading617 { justify-content:flex-end; margin-bottom:8px; }
  .tip { margin:16px 0; font-size:12px; }
  footer { margin-top:14px; font-size:10px; }
}

/* Review 618: collection artwork and a more cohesive desktop finish. */
@media (min-width:1000px) {
  body {
    background:radial-gradient(ellipse at 18% 0,rgba(255,255,255,.8),transparent 65%),linear-gradient(160deg,#e9eff4 0%,#d5e1ea 55%,#edf2f6 100%);
  }
  .site { padding-top:22px; }
  .hero { margin-top:0; box-shadow:0 12px 30px rgba(25,51,72,.18)!important; }
  .main-shell > .search-wrap { background:transparent; }
  .results-summary { display:flex; align-items:center; justify-content:center; gap:14px; color:#586e80; letter-spacing:.11em; }
  .results-summary::before,.results-summary::after { content:''; flex:1; height:1px; background:linear-gradient(90deg,transparent,#b8a67e); }
  .results-summary::after { transform:scaleX(-1); }
  #library .case-header { border:1px solid rgba(255,255,255,.45); box-shadow:0 4px 10px rgba(24,49,67,.1); }
  #library .case-button { position:relative; isolation:isolate; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:5px; min-height:100px; overflow:hidden; padding:12px 18px; }
  #library .case-header .case-title-wrap { position:relative; z-index:2; flex:none; max-width:63%; }
  .desktop-case-name617 { text-shadow:0 1px 2px rgba(0,0,0,.22); }
  .desktop-case-genre617 { text-shadow:0 1px 2px rgba(0,0,0,.2); }
  .desktop-case-art618 { position:absolute; z-index:0; display:flex; gap:2px; right:0; top:0; width:47%; height:100%; pointer-events:none; }
  .desktop-case-art618::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--case-accent617),transparent 48%),linear-gradient(0deg,rgba(8,24,39,.32),rgba(8,24,39,.04) 80%); }
  .desktop-tile-poster618 { display:block; flex:1; min-width:0; width:0; height:100%; object-fit:cover; object-position:center 30%; }
  #library .case-header .case-meta { position:relative; z-index:2; padding:0; border:0; border-radius:0; background:transparent; color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.25); }
  #library .case-header .case-count { flex-direction:row; align-items:baseline; font-size:13px; font-weight:800; line-height:1.2; gap:4px; }
  #library .case-header .case-count-label { font-size:10px; letter-spacing:.06em; }
  #library .case.open .case-header,#library .case.open .case-header:hover { box-shadow:0 0 0 2px #f8fafb,0 0 0 4px #b49a63,0 8px 20px rgba(24,49,67,.2); }
  #library .case-header:hover { box-shadow:0 5px 15px rgba(24,49,67,.18); }
  #library .case.open .title-list { border-top:3px solid var(--case-accent617); box-shadow:0 12px 26px rgba(24,49,67,.09); }
  .desktop-panel-heading617 { margin:-18px -20px 15px; padding:18px 20px 14px; border-bottom:1px solid #c5b58f; border-radius:9px 9px 0 0; background:linear-gradient(110deg,#e9f0f6,#f8fafb); }
  .desktop-panel-heading617 h3 { font-size:21px; letter-spacing:-.015em; }
  #library .movie { padding:6px 4px; }
  #library .desktop-row-poster618 { display:block; width:32px; height:48px; flex:0 0 32px; margin-right:12px; border-radius:3px; object-fit:cover; box-shadow:0 2px 5px rgba(17,39,57,.17); }
  #library .movie-wrap.details-open .desktop-row-poster618 { display:none; }
  #library .movie-wrap:not(.details-open) > .movie:hover { background:#eaf1f6; border-radius:7px; }
  #library.desktop-context617 .case-button { min-height:76px; }
  #library.desktop-context617 .case-title-wrap { max-width:78%; }
  #library.desktop-context617 .desktop-case-art618 { width:24%; }
}

/* Review 622: contrasting poster accents within the existing mobile case bars. */
@media (max-width:999px) {
  #library .case-button { position:relative; isolation:isolate; overflow:hidden; }
  #library .case-title-wrap,#library .case-meta { position:relative; z-index:2; }
  #library .case-title,#library .case-meta { text-shadow:0 1px 3px rgba(0,0,0,.5); }
  #library .desktop-case-art618 {
    position:absolute; z-index:0; display:flex; gap:1px; right:0; top:0;
    width:clamp(96px,33%,156px); height:100%; pointer-events:none;
  }
  #library .desktop-case-art618::after {
    content:''; position:absolute; inset:0;
    background:linear-gradient(90deg,var(--case-accent617),transparent 70%),linear-gradient(rgba(7,22,36,.3),rgba(7,22,36,.45));
  }
  #library .desktop-tile-poster618 {
    display:block; flex:1; min-width:0; width:0; height:100%;
    object-fit:cover; object-position:center 30%;
  }
}
