/* Keep artwork fallbacks inside the same reserved space as a real poster. */
:is(.poster,.deck-art,.intro-cover,.film-detail-cover,.home-pick-poster,.pair-cover,.focus-cover,.similar-films button>span){container-type:inline-size;min-width:0}
.cover-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;overflow:hidden;background:radial-gradient(ellipse at 80% 0,#59614b55,transparent 70%),linear-gradient(145deg,#282e26,#171c19);color:#e4e6d8;text-align:center;isolation:isolate}
.cover-fallback::before{content:'';position:absolute;inset:10px;border:1px solid #e4e6d812;border-radius:8px;z-index:-1}
.cover-fallback svg{width:26px;height:26px;flex:none;fill:none;stroke:#bbc6a2;stroke-width:1.2;opacity:.65}
.cover-fallback-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;font:clamp(12px,8cqi,30px)/1.2 var(--serif);overflow-wrap:anywhere;max-width:100%}
.cover-fallback-year{font-size:10px;color:#aeb6a2}
.cover-unavailable{min-height:0}
.deck-art.cover-unavailable{display:block;padding:0}
.film,.film-heading,.film-heading h3,.intro-copy,.deck-content,.home-pick-title{min-width:0}
.film-heading h3 button{overflow-wrap:anywhere;max-width:100%}

/* Content-sized account surfaces; no button may dictate a grid column's width. */
.account-overview{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
:is(.account-overview,.notification-layout,.benefit-grid,.app-hero,.member-shortcuts,.profile-shortcuts)>*{min-width:0}
.account-overview .panel{border:1px solid var(--line)}
.account-overview h2{line-height:1.16;margin:18px 0}
.account-grid{align-items:stretch;gap:12px}
.account-grid>.text-button{padding:12px 0;text-align:left;line-height:1.6}
:is(.account-overview,.notification-layout,.benefit-grid,.app-hero) .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.session-row{gap:12px;flex-wrap:wrap}
.session-row>div{flex:1;min-width:140px}
.session-row small{line-height:1.6;overflow-wrap:anywhere}
.session-row>.text-button{min-height:44px;padding:10px 0}
.session-current{flex:none}
.session-logout{margin-top:22px}
.app-hero .btn{margin-top:22px}
.app-hero p{margin:0}
.notification-layout .account-grid{margin-top:22px}
.install-next{border:1px solid var(--line);background:var(--panel);padding:18px;border-radius:14px;margin:22px 0}
.install-next b{font-size:14px;font-weight:500}.install-next p,.install-help{font-size:12px;line-height:1.8;margin-top:8px}
.install-dialog-done{margin-top:18px;width:100%}
.install-banner{display:grid;grid-template-columns:44px minmax(0,1fr) auto 36px;gap:14px;margin:24px 0;align-items:center}
.install-banner>div{min-width:0}.install-banner b{line-height:1.5}.install-banner span{line-height:1.6}
.install-cta{font-size:11px;padding:11px 16px;min-width:0;white-space:normal}
.install-dismiss{margin:0;width:36px;height:44px;padding:0;align-self:start}
@media(max-width:700px){
 .account-overview{grid-template-columns:minmax(0,1fr);gap:16px}
 .account-overview .panel{padding:24px 20px;border-radius:20px}
 .account-overview h2{font-size:30px}
 .session-logout,.app-hero .btn{width:100%}
 .app-hero{gap:18px;padding:24px 20px}.app-hero h1{font-size:32px}
 .profile-banner{flex-wrap:wrap}.profile-banner .btn{flex-basis:100%}
 .profile-banner>div:nth-child(2){min-width:0}
 .install-banner{grid-template-columns:36px minmax(0,1fr) 32px;gap:10px 12px;padding:16px}
 .install-banner>img{width:36px;height:36px}.install-banner>div{min-width:0}
 .install-banner>.install-cta{grid-column:1/3;grid-row:2;width:100%;margin:4px 0 0;min-height:44px}
 .install-banner>.install-dismiss{grid-column:3;grid-row:1;width:32px}
 .home-pick-poster .cover-fallback{padding:12px;gap:7px}.home-pick-poster .cover-fallback svg{width:18px;height:18px}
 .home-pick-poster .cover-fallback-title{font-size:13px}.home-pick-poster .cover-fallback-year{font-size:9px}
 .home-pick-poster .cover-fallback::before{inset:5px;border-radius:6px}
 .similar-films .cover-fallback{padding:12px;gap:8px}
}
.scores small,.film .scores small{white-space:normal;line-height:1.35;min-height:2.7em;display:flex;align-items:flex-end}
