body.catalog-mode .shell{background-image:linear-gradient(#0005,#0008),var(--session-art,url("l8zon-punk-fresco.jpg"))!important;background-size:cover!important;background-position:center!important}
.public-cartouchier{display:block!important;container-type:inline-size}.public-cartouchier>.lcd-grid{height:clamp(650px,80dvh,1000px);max-height:none}.lcd-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}.lcd-pagination button{padding:12px;border:1px solid #d7b487;border-radius:8px;background:#291724;color:#fff}.public-cartouchier .lcd-slot{width:100%;margin:0}.public-cartouchier .lcd-slot strong{font-size:16px}.public-cartouchier .lcd-slot small{font-size:14px}.public-cartouchier .lcd-code{font-size:24px}
.lcd-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(10,minmax(0,1fr));grid-template-columns:repeat(var(--lcd-columns,3),minmax(0,1fr));gap:5px;min-width:0;min-height:0}
.lcd-slot{display:flex;align-items:center;gap:10px;min-width:0;min-height:0;box-sizing:border-box;padding:5px 9px;border:2px solid #535f59;border-radius:5px;background:#dce5dc;color:#14251f;text-align:left;box-shadow:inset 0 0 5px #243b3230;font-family:system-ui,sans-serif;overflow:hidden}
.tv-portrait .lcd-slot:not(.is-playing){background:#dce5dccc}
/* TV Cartouchier: 45% transparent backgrounds; text and codes remain opaque. */
body.tv-mode .tv-panel-catalog .lcd-slot,#screenCatalog .lcd-slot{background:rgba(220,229,220,.55)}
body.tv-mode .tv-panel-catalog .lcd-slot.is-playing,#screenCatalog .lcd-slot.is-playing{background:rgba(244,216,218,.55)}
.lcd-slot>span{min-width:0;display:block}.lcd-slot strong,.lcd-slot small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.15}.lcd-slot strong{font-size:clamp(13px,1.25cqw,25px);font-weight:800}.lcd-slot small{font-size:clamp(12px,1.1cqw,22px);margin-top:2px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lcd-code{flex:none;min-width:2.5em;font:800 clamp(17px,1.8cqw,34px)/1 monospace;letter-spacing:-.06em}.lcd-slot.is-playing{border-color:#ff4964;background:#f4d8da}.lcd-slot.is-playing .lcd-code{color:#b10026}.lcd-slot.is-empty{opacity:.55}.lcd-slot:focus-visible{outline:3px solid #ffde96;outline-offset:1px}.lcd-slot:disabled{cursor:default}
@media(max-width:720px){#catalogView .box-title{flex-wrap:wrap;gap:8px}#catalogView .catalog-tools{display:flex;width:100%}#catalogView .search{flex:1;min-width:0;font-size:16px}}

/* Public cartouchier: five rows, code-range pagination. TV keeps its own grid. */
.public-cartouchier>.lcd-grid{grid-template-rows:repeat(5,minmax(0,1fr));height:350px;min-height:0;max-height:none}
.public-cartouchier>.lcd-pagination{flex-wrap:wrap;justify-content:center;gap:5px;padding:8px 0}
.public-cartouchier>.lcd-pagination button{padding:6px 9px;font-size:12px;cursor:pointer}
.public-cartouchier>.lcd-pagination button[aria-current="page"]{background:#d7b487;color:#211316;font-weight:800}
body.catalog-mode .topbar{padding:8px 14px;margin-bottom:8px}
body.catalog-mode .brand h1{font-size:26px}
body.catalog-mode .collections{padding:8px;margin-bottom:8px}
body.catalog-mode .collections-head{margin-bottom:5px}
body.catalog-mode .collection-tab{padding:7px 10px}
body.catalog-mode .time-travel{padding:7px;margin-bottom:7px}
body.catalog-mode #catalogView>.box-title{padding:8px 12px}
