#playlist-list .playlist-video-card{min-width:0;display:flex;flex-direction:column;gap:4px}#playlist-list .playlist-video-share{margin:0 auto 8px;width:100%;min-height:44px;padding:7px 5px;border:0;background:transparent!important;color:inherit;font-size:13px;line-height:1.4;box-shadow:none;text-align:center}#playlist-list .playlist-video-share:hover{text-decoration:underline}#playlist-share-video{min-height:44px} .single-video-share{display:block;margin:8px auto 18px;min-height:44px;padding:8px 12px;border:1px solid #d5c4a4;border-radius:10px;background:transparent;color:#70501c;font:inherit;font-size:.9rem;cursor:pointer}

#playlist-dialog.manual-collection #playlist-list:not([hidden]){grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}#playlist-dialog.manual-collection .playlist-thumbnail span{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.collection-source{font-size:12px;text-align:center;color:inherit;padding:4px 6px;margin-bottom:8px;overflow-wrap:anywhere}#playlist-dialog.manual-collection .playlist-video-share{white-space:normal}

#playlist-list .collection-description{font-size:13px;line-height:1.55;text-align:left;margin:6px 2px 10px;color:inherit;overflow-wrap:anywhere}#playlist-list .playlist-thumbnail span{overflow-wrap:anywhere;line-height:1.4}.shared-film-description{line-height:1.65}

/* Equal card text areas keep share buttons aligned, including on iPad. */
#playlist-list{align-items:start}#playlist-list .playlist-video-card{display:flex;flex-direction:column;gap:6px;min-width:0}#playlist-list .playlist-thumbnail{flex:none}#playlist-list .playlist-thumbnail span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:4.2em;line-height:1.4;width:100%}#playlist-list .playlist-thumbnail img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
#playlist-list .collection-description-box{height:11em;flex:none;display:flex;flex-direction:column;margin:0 2px;font-size:13px;min-width:0}#playlist-list .collection-description-box .collection-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;height:7.5em;min-height:7.5em;line-height:1.5;font-size:inherit;text-align:left;margin:0;overflow-wrap:anywhere}#playlist-list .collection-more{display:block;min-height:44px;width:100%;padding:6px 2px;border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;cursor:pointer;margin-top:auto}#playlist-list .collection-more[hidden]{display:none}#playlist-list .playlist-video-share{min-height:52px;margin:0!important}#playlist-list .collection-source{margin-top:0}
.film-description-dialog{width:min(560px,92vw);max-height:80dvh;overflow:auto;border:1px solid #b89a51;border-radius:18px;padding:24px;background:#fffaf1;color:#153f5b;font:17px/1.65 system-ui}.film-description-dialog::backdrop{background:#302b2566}.film-description-dialog h2{font-size:1.3rem;line-height:1.4;margin-top:0}.film-description-dialog button{display:block;min-height:44px;margin:18px 0 0 auto;border:1px solid #b89a51;border-radius:12px;padding:10px 18px;background:#f1e5c9;color:inherit;font:inherit;cursor:pointer}

/* Center film captions and leave air between the image, title and description. */
#playlist-dialog #playlist-list .playlist-thumbnail{gap:14px;padding-bottom:12px}#playlist-list .playlist-thumbnail span{text-align:center!important}#playlist-list .collection-description-box{margin-top:14px;margin-bottom:2px}#playlist-list .collection-description-box .collection-description{text-align:center!important}.film-description-dialog h2,.film-description-dialog p,.shared-film-description{text-align:center}

/* One spacing rhythm for every film card and every row. */
#playlist-dialog #playlist-list:not([hidden]){column-gap:20px!important;row-gap:32px!important;align-items:start}
#playlist-dialog #playlist-list .playlist-video-card{gap:16px;margin:0;padding:0;align-self:start}
#playlist-dialog #playlist-list .playlist-thumbnail{gap:16px;margin:0;padding:10px 8px 12px}
#playlist-dialog #playlist-list .collection-description-box{height:calc(7.5em + 60px);margin:0 2px;gap:16px;justify-content:flex-start}
#playlist-dialog #playlist-list .collection-description-box .collection-description{margin:0;flex:none}
#playlist-dialog #playlist-list .collection-more{margin:0;flex:none;min-height:44px;padding:6px 2px}
#playlist-dialog #playlist-list .playlist-video-share{margin:0!important;min-height:52px;flex:none}
#playlist-dialog #playlist-list .collection-source{margin:0;padding:4px 6px}

/* External films use the same title size as the personal film cards. */
#playlist-dialog.manual-collection #playlist-list .playlist-thumbnail span{font-size:inherit}

/* Compact video selection: preserve a useful thumbnail and remove fixed empty areas. */
#playlist-dialog.bookfilm-style:not(.expanded) .playlist-top{padding:12px 16px;gap:12px}
#playlist-dialog.bookfilm-style:not(.expanded) .playlist-top h2{font-size:clamp(18px,4vw,24px);line-height:1.3}
#playlist-dialog.bookfilm-style:not(.expanded) .playlist-controls{gap:8px;padding:10px 12px}
#playlist-dialog.bookfilm-style:not(.expanded) .playlist-controls button{font-size:14px;line-height:1.3;min-height:44px;padding:8px 12px;border-radius:14px}
#playlist-dialog.bookfilm-style:not(.expanded) #playlist-position{font-size:13px;padding:0 12px 8px}
#playlist-dialog.bookfilm-style #playlist-list .playlist-thumbnail{min-height:0!important;height:auto!important;padding:10px!important;gap:10px!important}
#playlist-dialog.bookfilm-style #playlist-list .playlist-thumbnail img{width:100%!important;max-width:none!important;height:auto!important;aspect-ratio:16/9;object-fit:contain;border-radius:8px}
#playlist-dialog.bookfilm-style #playlist-list .playlist-thumbnail span{font-size:15px!important;line-height:1.4;height:auto;min-height:0;max-height:4.2em;margin:0;padding:0}
#playlist-dialog.bookfilm-style #playlist-list .playlist-video-card{gap:10px}
#playlist-dialog.bookfilm-style #playlist-list .collection-description-box{height:auto;min-height:0;gap:8px}
#playlist-dialog.bookfilm-style #playlist-list .collection-description-box .collection-description{height:auto;min-height:0;font-size:13px;line-height:1.5}
#playlist-dialog.bookfilm-style #playlist-list .playlist-video-share,#playlist-dialog.bookfilm-style #playlist-list .collection-more{font-size:14px;min-height:44px;padding:8px 10px}
#playlist-dialog.bookfilm-style.single-item-collection:not(.expanded) #playlist-list:not([hidden]){grid-template-columns:minmax(0,1fr);max-width:560px;margin:auto;width:100%;box-sizing:border-box}
#playlist-dialog.bookfilm-style.single-item-collection:not(.expanded) #playlist-prev,#playlist-dialog.bookfilm-style.single-item-collection:not(.expanded) #playlist-next,#playlist-dialog.bookfilm-style.single-item-collection:not(.expanded) #playlist-list-toggle,#playlist-dialog.bookfilm-style.single-item-collection:not(.expanded) #playlist-share-video{display:none!important}
