.catalog-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 18px;min-width:0}
.catalog-path button,.catalog-path span{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:14px;font:inherit}
.catalog-path button{border:1px solid var(--border);color:var(--text);background:var(--ui-panel,var(--panel));cursor:pointer}
.catalog-path span{color:var(--muted);overflow-wrap:anywhere}
.catalog-branches[hidden]{display:none}
.catalog-branches{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px}
.catalog-branch{display:flex;align-items:center;gap:14px;width:100%;min-width:0;min-height:98px;padding:20px;text-align:start;color:var(--text);border:1px solid var(--border);border-radius:22px;background:var(--ui-panel,var(--panel));font:inherit;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}
.catalog-branch:hover{transform:translateY(-2px);border-color:var(--border);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.catalog-branch>i:first-child{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;color:var(--accent);border-radius:15px;background:var(--ui-soft,rgba(127,127,127,.08))}
.catalog-branch-copy{display:grid;gap:4px;min-width:0;flex:1}.catalog-branch-copy b{font-size:18px;overflow-wrap:anywhere}.catalog-branch-copy small{color:var(--muted);font-size:14px}
.catalog-branch>i:last-child{color:var(--muted)}
.watch-dialog .inline-player{min-width:0}.watch-dialog .inline-player-heading{gap:16px;align-items:center}.watch-dialog .inline-player-heading h2{min-width:0;flex:1;line-height:1.6;font-size:clamp(18px,4.5vw,24px);overflow-wrap:anywhere}
.watch-dialog .yt-pbtn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 16px;font:inherit;font-weight:700;line-height:1.4;min-width:0;border-radius:16px;text-align:center}
.watch-dialog .yt-pbtn i{flex:0 0 auto}.watch-dialog .button-label{min-width:0;overflow-wrap:break-word}.watch-dialog #closePlayer{flex:0 0 auto;min-width:48px}
.watch-dialog .watch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:18px}
.watch-dialog .player-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px}
.watch-dialog .player-tools>*{width:100%;margin:0;min-width:0;align-self:stretch}.watch-dialog .player-tools label{display:grid;align-content:end;gap:7px;color:var(--muted);font-weight:500}
.watch-dialog .player-tools select{width:100%;min-height:48px;box-sizing:border-box;border-radius:16px}.watch-dialog #playAgain{align-self:end;min-height:48px}
.watch-dialog #openVideoDirect{width:100%;box-sizing:border-box;margin-block:14px 0}.watch-dialog .video-stage{position:relative;isolation:isolate;overflow:hidden;border-radius:22px}.watch-dialog .video-stage video{width:100%;height:100%;object-fit:contain}
.player-loading-orbit{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;color:var(--accent);opacity:0;transition:opacity .2s}
.video-stage.is-loading .player-loading-orbit{opacity:1}.video-stage.is-loading .player-loading-orbit rect{animation:player-loading-orbit 1.7s linear infinite}
@keyframes player-loading-orbit{to{stroke-dashoffset:-100}}
.cartv-send-panel{border:1px solid var(--border);border-radius:20px;padding:16px;margin-block:14px 20px;background:var(--ui-soft,var(--ui-panel))}
.cartv-send-panel[hidden]{display:none}.cartv-send-steps{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;margin:0;padding:0}
.cartv-send-steps li{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;color:var(--muted);font-size:13px}.cartv-send-steps i{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;border:1px solid var(--border)}
.cartv-send-steps .done{color:var(--accent)}.cartv-send-steps .done i{background:var(--grad);color:white;border-color:transparent}.cartv-send-steps .current{color:var(--text)}
.cartv-send-panel p{margin:12px 0 0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}.cartv-send-panel[data-state=error]{border-color:var(--accent)}
.watch-dialog .yt-send.is-sending{background:linear-gradient(115deg,#cf1338,#ee3822,#e59220,#328f55,#cf1338);background-size:260% 260%;animation:cartv-send-gradient 1.3s ease infinite;color:white}
.watch-dialog .yt-send.is-sent{background:var(--grad);color:white}.watch-dialog .yt-send.is-sent i:before{content:'\f00c'}
@keyframes cartv-send-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@media(max-width:520px){.watch-dialog .watch-actions{grid-template-columns:1fr}.watch-dialog .player-tools .yt-pbtn{font-size:14px}.cartv-send-steps{gap:4px}.cartv-send-steps li{flex-direction:column;text-align:center}.catalog-branch{min-height:88px;padding:16px}.watch-dialog .inline-player-heading h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){.catalog-branch,.player-loading-orbit{transition:none}.catalog-branch:hover{transform:none}.video-stage.is-loading .player-loading-orbit rect,.watch-dialog .yt-send.is-sending{animation:none}.player-loading-orbit rect{stroke-dasharray:100 0}}

.cartv-page .watch-dialog #carStatus:not(:empty){position:static;top:auto;margin:12px 0 0;padding:0;background:transparent;border:0;box-shadow:none;font-weight:500}
.cartv-page .watch-dialog #sendCar[data-state=sending]{opacity:1}

#catalog:focus{outline:none}.catalog-branch:focus-visible{outline:2px solid var(--text);outline-offset:3px}

/* Catalog back stays inside IPTV; the explicit Home link retains site navigation. */
.cartv-head .cartv-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px;padding:10px 12px;font:inherit;white-space:nowrap;cursor:pointer}
.cartv-head .cartv-back:disabled{opacity:.55;cursor:default}
.cartv-head .cartv-back:focus-visible{outline:2px solid var(--text);outline-offset:3px}
