/* MadRasana Full Concerts Page — matches Songs page layout exactly */
:root{
    --mr-bg:#F7F2EA;--mr-bg2:#FFFFFF;--mr-bg3:#FBF8F2;--mr-bg4:#F0EAE0;
    --mr-text:#1A1512;--mr-muted:#8C7F71;--mr-dim:#A89B8E;
    --mr-orange:#B0712A;--mr-org-lt:#C98A3C;--mr-teal:#2E5E52;
    --mr-border:rgba(26,21,18,.10);--mr-b-vis:rgba(26,21,18,.18);
    --mr-b-org:rgba(176,113,42,.30);
    --mr-font:'DM Sans',system-ui,sans-serif;
    --mr-serif:'Cormorant Garamond',Georgia,serif;
}

.mrc-page{
    font-family:var(--mr-font);
    color:var(--mr-text);
    width:100%;
    padding:0 0 3rem;
}

/* ══════════════════════════════════════════
   HERO PLAYER
══════════════════════════════════════════ */
.mrc-hero{display:flex;flex-direction:column;margin-bottom:2rem;}

.mrc-hero-video{
    position:relative;width:100%;aspect-ratio:16/9;
    flex-shrink:0;background:#1A1410;overflow:hidden;
}
#mrc-yt-player,
#mrc-yt-player iframe{
    position:absolute;inset:0;
    width:100% !important;height:100% !important;
    max-height:none !important;border:none !important;
}
.mrc-yt-overlay{position:absolute;inset:0;z-index:1;cursor:pointer;}

.mrc-hero-idle{
    position:absolute;inset:0;z-index:2;
    transition:opacity .35s;cursor:pointer;overflow:hidden;
}
.mrc-hero.mrc-playing .mrc-hero-idle{opacity:0;pointer-events:none;}
.mrc-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}

.mrc-hero-idle-info{
    position:absolute;bottom:0;left:0;right:0;
    padding:3.5rem 1.5rem 1.25rem;
    background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.45) 55%,transparent 100%);
    z-index:1;pointer-events:none;
}
.mrc-hero-idle-label{
    display:block;font-size:.58rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
    color:rgba(255,255,255,.62);margin-bottom:.45rem;
}
.mrc-hero-idle-title{
    font-family:var(--mr-serif);font-size:2rem;font-weight:400;line-height:1.2;
    color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6);
}
.mrc-hero-idle-sub{
    font-size:.9rem;color:rgba(255,255,255,.75);margin-top:.35rem;
    font-style:italic;
}

/* Bar below video */
.mrc-hero-bar{
    background:var(--mr-bg2);border:0.5px solid var(--mr-border);border-top:none;
    padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;min-height:56px;
}
.mrc-hero-info{flex:1;min-width:0;}
.mrc-hero-title{
    font-family:var(--mr-serif);font-size:1.15rem;font-weight:400;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mr-text);
}
.mrc-hero-meta{
    font-size:.75rem;color:var(--mr-orange);margin-top:.1rem;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mrc-hero-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0;}

/* Buttons — identical to songs page */
.mrc-ctrl-btn{
    background:var(--mr-text) !important;border:none !important;border-radius:8px !important;
    box-shadow:none !important;color:rgba(255,255,255,.65);cursor:pointer;
    padding:.45rem !important;width:36px;height:36px;
    display:flex !important;align-items:center;justify-content:center;
    transition:color .15s,background .15s;flex-shrink:0;
}
.mrc-ctrl-btn:hover{color:#fff;background:rgba(26,21,18,.75) !important;}
.mrc-shuffle-on{color:var(--mr-orange) !important;}

.mrc-ctrl-play{
    background:var(--mr-orange) !important;border:none !important;padding:0 !important;
    color:#fff;width:40px !important;height:40px !important;
    min-width:40px;max-width:40px;border-radius:50% !important;cursor:pointer;
    display:flex !important;align-items:center;justify-content:center;
    transition:background .15s;flex:0 0 40px;box-sizing:border-box;
}
.mrc-ctrl-play:hover{background:var(--mr-org-lt) !important;}
.mrc-hero-queue{font-size:.68rem;color:var(--mr-dim);white-space:nowrap;padding-left:.25rem;}

.mrc-hero-video:fullscreen,
.mrc-hero-video:-webkit-full-screen{width:100vw;height:100vh;background:#000;}
.mrc-hero-video:fullscreen .mrc-hero-idle,
.mrc-hero-video:-webkit-full-screen .mrc-hero-idle{display:none;}

/* ══════════════════════════════════════════
   FILTERS  — identical to songs page
══════════════════════════════════════════ */
.mrc-filters{
    background:var(--mr-bg3);border:0.5px solid var(--mr-border);border-radius:3px;
    padding:.875rem 1rem;margin-bottom:.875rem;
    display:flex;flex-wrap:wrap;align-items:flex-end;gap:.625rem;
}
.mrc-search-wrap{
    flex:1;min-width:200px;display:flex;align-items:center;gap:.5rem;
    background:var(--mr-bg2);border:0.5px solid var(--mr-b-vis);border-radius:3px;padding:0 .875rem;
}
.mrc-search-wrap svg{color:var(--mr-muted);flex-shrink:0;}
#mrc-search{
    flex:1;background:transparent;border:none;outline:none;
    color:var(--mr-text);font-family:var(--mr-font);font-size:.85rem;font-weight:300;padding:.58rem 0;
}
#mrc-search::placeholder{color:var(--mr-muted);}
.mrc-selects{display:flex;flex-wrap:wrap;gap:.5rem;}
.mrc-sel-wrap{display:flex;flex-direction:column;gap:.22rem;}
.mrc-sel-wrap label{
    font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:var(--mr-dim);padding-left:2px;
}
.mrc-select{
    background:var(--mr-bg2);border:0.5px solid var(--mr-b-vis);border-radius:3px;
    color:var(--mr-text);font-family:var(--mr-font);font-size:.78rem;
    padding:.46rem .875rem;outline:none;cursor:pointer;min-width:130px;
    -webkit-appearance:auto;appearance:auto;
}
.mrc-select:hover{border-color:rgba(26,21,18,.35);}
.mrc-select:focus{border-color:var(--mr-orange);}
.mrc-btn-ghost{
    background:transparent;border:0.5px solid var(--mr-b-vis);border-radius:3px;
    color:var(--mr-muted);font-family:var(--mr-font);font-size:.7rem;font-weight:500;
    letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1rem;cursor:pointer;
    transition:color .15s,border-color .15s;
}
.mrc-btn-ghost:hover{color:var(--mr-text);border-color:rgba(26,21,18,.4);}

.mrc-chips{display:flex;flex-wrap:wrap;gap:.4rem;min-height:0;margin-bottom:.35rem;}
.mrc-chip{
    display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;color:var(--mr-orange);
    border:0.5px solid var(--mr-b-org);padding:.2rem .6rem;border-radius:2px;
    background:rgba(176,113,42,.07);
}
.mrc-chip button{background:none;border:none;color:var(--mr-muted);cursor:pointer;font-size:.9rem;line-height:1;padding:0;}
.mrc-chip button:hover{color:var(--mr-text);}

.mrc-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.75rem;color:var(--mr-muted);}

/* ══════════════════════════════════════════
   CONCERT TRACKLIST
   Columns: sel | expand▸ | info | dur
══════════════════════════════════════════ */
.mrc-tracklist-head{
    display:grid;grid-template-columns:20px 36px 1fr 72px;gap:.75rem;
    padding:.3rem 1rem;
    font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:var(--mr-dim);border-bottom:0.5px solid var(--mr-border);
}
.mrc-list{display:flex;flex-direction:column;border-bottom:0.5px solid var(--mr-border);margin-bottom:1.5rem;}
.mrc-list.mrc-loading{opacity:.5;pointer-events:none;}

/* Concert row */
.mrc-item{
    display:grid;grid-template-columns:20px 36px 1fr 72px;gap:.75rem;
    align-items:center;padding:.625rem 1rem;
    border-top:0.5px solid var(--mr-border);cursor:pointer;transition:background .1s;
}
.mrc-item:hover        {background:rgba(26,21,18,.03);}
.mrc-item.mrc-active   {background:rgba(176,113,42,.08);}
.mrc-item.mrc-selected {background:rgba(176,113,42,.05);}
.mrc-item.mrc-selected.mrc-active{background:rgba(176,113,42,.12);}

/* Selection circle */
.mrc-item-sel{
    width:16px;height:16px;flex-shrink:0;
    border:1.5px solid rgba(140,127,113,.35);border-radius:50%;
    cursor:pointer;transition:border-color .15s,background .15s;
    position:relative;display:block;
}
.mrc-item:hover .mrc-item-sel{border-color:var(--mr-muted);}
.mrc-item.mrc-selected .mrc-item-sel{background:var(--mr-orange);border-color:var(--mr-orange);}
.mrc-item.mrc-selected .mrc-item-sel::after{
    content:'';position:absolute;left:4px;top:1.5px;width:4px;height:7px;
    border:1.5px solid #fff;border-top:none;border-left:none;transform:rotate(45deg);
}

/* Expand button — col 2, before title.
   Shows chevron at rest; play triangle when row is hovered;
   animated bars when this concert is playing. */
.mrc-expand-btn{
    background:transparent !important;border:none !important;box-shadow:none !important;
    padding:0 !important;margin:0 !important;cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    width:36px;height:36px;border-radius:4px;flex-shrink:0;
    position:relative;
    transition:background .15s;
}
.mrc-expand-btn:hover{background:rgba(176,113,42,.08) !important;}
/* Chevron — always visible unless something else shows */
.mrc-chevron{
    color:var(--mr-dim);transition:transform .25s,opacity .15s;
    display:block;flex-shrink:0;
}
.mrc-expand-btn[aria-expanded="true"] .mrc-chevron{transform:rotate(180deg);color:var(--mr-orange);}
/* Play triangle — hidden by default, shown on row hover (not when expanded) */
.mrc-item-play{
    display:none;color:var(--mr-orange);position:absolute;
}
.mrc-item-bars{
    display:none;align-items:flex-end;gap:2px;height:14px;position:absolute;
}
.mrc-item-bars span{
    display:inline-block;width:3px;background:var(--mr-orange);border-radius:1px;
    animation:mrc-bar-bounce .8s ease-in-out infinite alternate;
}
.mrc-item-bars span:nth-child(2){animation-delay:.15s;}
.mrc-item-bars span:nth-child(3){animation-delay:.3s;}
@keyframes mrc-bar-bounce{from{height:4px}to{height:12px}}

/* When row hovered → show play icon, hide chevron */
.mrc-item:hover .mrc-expand-btn .mrc-chevron{opacity:0;}
.mrc-item:hover .mrc-expand-btn .mrc-item-play{display:block;}
/* When playing → show bars, hide chevron and play */
.mrc-item.mrc-active .mrc-expand-btn .mrc-chevron{opacity:0;}
.mrc-item.mrc-active .mrc-expand-btn .mrc-item-bars{display:inline-flex;}
/* Hovering while playing → show play icon instead of bars */
.mrc-item.mrc-active:hover .mrc-expand-btn .mrc-item-bars{display:none;}
.mrc-item.mrc-active:hover .mrc-expand-btn .mrc-item-play{display:block;}
/* Hovering the expand button itself → always show chevron, not play */
.mrc-item .mrc-expand-btn:hover .mrc-chevron{opacity:1 !important;}
.mrc-item .mrc-expand-btn:hover .mrc-item-play{display:none !important;}

/* Track info */
.mrc-track-info{min-width:0;}
.mrc-track-title{
    font-family:var(--mr-serif);font-size:1.15rem;font-weight:400;color:var(--mr-text);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mrc-item.mrc-active .mrc-track-title{color:var(--mr-orange);}
.mrc-track-sub{
    font-size:.875rem;margin-top:.05rem;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mr-dim);
}
.mrc-bl-part{color:var(--mr-orange);}
.mrc-item.mrc-active .mrc-bl-part{color:var(--mr-org-lt);}

/* Duration */
.mrc-track-dur{
    font-size:.75rem;color:var(--mr-muted);
    text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;
}

/* Selected items highlighted — list always stays fully visible */

/* ══════════════════════════════════════════
   SET LIST (expanded songs under a concert)
══════════════════════════════════════════ */
.mrc-setlist{border-left:2px solid var(--mr-b-org);margin-left:2.5rem;}

/* Song sub-row — lighter version of the concert row */
.mrc-song{
    display:grid;grid-template-columns:16px 24px 1fr 64px;gap:.625rem;
    align-items:center;padding:.5rem .75rem .5rem 1rem;
    border-top:0.5px solid var(--mr-border);cursor:pointer;transition:background .1s;
}
.mrc-song:hover        {background:rgba(26,21,18,.03);}
.mrc-song.mrc-active   {background:rgba(176,113,42,.08);}
.mrc-song.mrc-selected {background:rgba(176,113,42,.05);}
.mrc-song.mrc-selected.mrc-active{background:rgba(176,113,42,.12);}

.mrc-song-sel{
    width:14px;height:14px;flex-shrink:0;
    border:1.5px solid rgba(140,127,113,.3);border-radius:50%;
    cursor:pointer;transition:border-color .15s,background .15s;
    position:relative;display:block;
}
.mrc-song:hover .mrc-song-sel{border-color:var(--mr-muted);}
.mrc-song.mrc-selected .mrc-song-sel{background:var(--mr-orange);border-color:var(--mr-orange);}
.mrc-song.mrc-selected .mrc-song-sel::after{
    content:'';position:absolute;left:3px;top:1px;width:4px;height:6px;
    border:1.5px solid #fff;border-top:none;border-left:none;transform:rotate(45deg);
}

.mrc-song-icon{display:flex;align-items:center;justify-content:center;color:var(--mr-dim);width:24px;}
.mrc-song-play{display:none;color:var(--mr-orange);}
.mrc-song-bars{display:none;align-items:flex-end;gap:2px;height:12px;}
.mrc-song-bars span{
    display:inline-block;width:2.5px;background:var(--mr-orange);border-radius:1px;
    animation:mrc-bar-bounce .8s ease-in-out infinite alternate;
}
.mrc-song-bars span:nth-child(2){animation-delay:.15s;}
.mrc-song-bars span:nth-child(3){animation-delay:.3s;}
.mrc-song:hover .mrc-song-play{display:block;}
.mrc-song:hover .mrc-song-bars{display:none !important;}
.mrc-song.mrc-active .mrc-song-bars{display:inline-flex;}
.mrc-song.mrc-active .mrc-song-play{display:none;}
.mrc-song.mrc-active:hover .mrc-song-play{display:block;}
.mrc-song.mrc-active:hover .mrc-song-bars{display:none !important;}

.mrc-song-info{min-width:0;}
.mrc-song-title{font-size:.95rem;color:var(--mr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mrc-song.mrc-active .mrc-song-title{color:var(--mr-orange);}
.mrc-song-sub{font-size:.78rem;color:var(--mr-dim);margin-top:.04rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mrc-song-dur{font-size:.72rem;color:var(--mr-muted);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;}

.mrc-no-songs{padding:.75rem 1rem;font-size:.8rem;color:var(--mr-muted);font-style:italic;}

/* Empty / load more — identical to songs page */
.mrc-empty{text-align:center;padding:3rem 2rem;color:var(--mr-muted);}
.mrc-empty p{font-size:.9rem;margin-bottom:1rem;}
.mrc-more-wrap{text-align:center;margin:1rem 0;}
.mrc-more{
    font-family:var(--mr-font);font-size:.75rem;font-weight:500;
    letter-spacing:.1em;text-transform:uppercase;
    color:var(--mr-text);background:var(--mr-bg2);
    border:0.5px solid var(--mr-b-vis);border-radius:3px;
    padding:.75rem 2.5rem;cursor:pointer;
    transition:background .15s,border-color .15s;
    display:inline-flex;align-items:center;gap:.75rem;
}
.mrc-more:hover{background:var(--mr-bg4);border-color:var(--mr-b-org);}
.mrc-rem{color:var(--mr-dim);font-weight:300;font-size:.68rem;}

/* ══════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════ */
@media(max-width:1024px){
    .mrc-page{padding-left:12px;padding-right:12px;}
}
@media(max-width:640px){
    .mrc-hero-bar{flex-direction:column;align-items:stretch;padding:.625rem .75rem;gap:.5rem;min-height:0;}
    .mrc-hero-info{width:100%;}
    .mrc-hero-controls{justify-content:space-between;width:100%;}
    .mrc-ctrl-btn{width:36px !important;height:36px !important;min-width:0 !important;max-width:none !important;flex:0 0 36px !important;}
    .mrc-ctrl-play{width:36px !important;height:36px !important;min-width:0 !important;max-width:none !important;flex:0 0 36px !important;}
    .mrc-hero-idle-title{font-size:1.25rem;}
    .mrc-hero-idle-info{padding:2.5rem 1rem 1rem;}
    .mrc-tracklist-head{grid-template-columns:20px 32px 1fr 60px;}
    .mrc-item{grid-template-columns:20px 32px 1fr 60px;}
    .mrc-setlist{margin-left:1rem;}
    .mrc-song{grid-template-columns:14px 20px 1fr 56px;}
    .mrc-filters{flex-direction:column;align-items:stretch;}
    .mrc-selects{flex-direction:column;}
    .mrc-select{min-width:0;}
}
