/* Extracted from pages/music.php — v170 */
.music-hub-shell{
      --music-accent:#2f7cf6;
      --music-accent-soft:rgba(47,124,246,.12);
      --music-line:rgba(15,23,42,.08);
      --music-line-strong:rgba(15,23,42,.12);
      --music-surface:#ffffff;
      --music-surface-soft:#f8fafc;
      --music-text:#0f172a;
      --music-muted:#94a3b8;
      --music-muted-2:#64748b;
    }
    .dark .music-hub-shell,
    :is(html.dark,body.dark) .music-hub-shell{
      --music-accent:#7dd3fc;
      --music-accent-soft:rgba(125,211,252,.14);
      --music-line:rgba(38,38,38,.96);
      --music-line-strong:rgba(64,64,64,.92);
      --music-surface:#0a0a0a;
      --music-surface-soft:rgba(23,23,23,.94);
      --music-text:#f8fafc;
      --music-muted:#94a3b8;
      --music-muted-2:#cbd5e1;
    }
    .music-hub-hero,
    .music-hub-card,
    .music-hub-stat{
      border:1px solid var(--music-line);
      background:var(--music-surface);
      box-shadow:0 14px 30px rgba(15,23,42,.045);
      border-radius:28px;
      overflow:hidden;
    }
    .dark .music-hub-hero,
    .dark .music-hub-card,
    .dark .music-hub-stat,
    :is(html.dark,body.dark) .music-hub-hero,
    :is(html.dark,body.dark) .music-hub-card,
    :is(html.dark,body.dark) .music-hub-stat{
      box-shadow:0 14px 30px rgba(0,0,0,.18);
    }
    .music-hub-hero{
      position:relative;
      padding:16px 18px;
      background:
        radial-gradient(circle at top right, rgba(59,130,246,.08), transparent 32%),
        radial-gradient(circle at bottom left, rgba(14,165,233,.05), transparent 34%),
        var(--music-surface);
    }
    .music-hub-hero-tabs-only{padding:12px 18px;}
    .music-hub-hero-tabs-only .music-hub-tabs{margin-top:0;}
    .music-hub-kicker{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--music-accent);}
    .music-hub-title{margin-top:8px;font-size:34px;line-height:1.02;font-weight:900;letter-spacing:-.04em;color:var(--music-text);}
    .music-hub-subtitle{margin-top:10px;max-width:760px;font-size:15px;line-height:1.55;color:var(--music-muted-2);}
    .music-hub-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
    .music-hub-tab{
      display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border-radius:999px;
      border:1px solid var(--music-line);background:var(--music-surface-soft);font-size:12px;font-weight:700;color:var(--music-muted-2);
      transition:.18s ease;text-decoration:none;
    }
    .music-hub-tab:hover{color:var(--music-text);transform:translateY(-1px);}
    .music-hub-tab.is-active{background:var(--music-accent);border-color:transparent;color:#fff;box-shadow:0 8px 16px rgba(47,124,246,.14);}    .music-hub-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 8px;}
    .music-hub-card-head-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
    .music-hub-card-title{font-size:22px;font-weight:900;letter-spacing:-.03em;color:var(--music-text);}
    .music-hub-card-subtitle{margin-top:5px;font-size:13px;color:var(--music-muted-2);}
        .music-hub-view-all{font-size:13px;font-weight:700;color:var(--music-accent);text-decoration:none;}
    .music-hub-view-all:hover{text-decoration:underline;}
    .music-list{display:flex;flex-direction:column;gap:3px;padding:8px 10px 12px;}
    .music-track-row{
      display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 12px 6px 8px;min-height:64px;
      border-radius:14px;background:transparent;border:1px solid transparent;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease;
    }
    .music-track-row.has-chart-meta{grid-template-columns:34px 56px minmax(0,1fr) auto;gap:10px;padding-left:12px;}
    .music-track-chart-meta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:34px;align-self:stretch;}
    .music-track-chart-rank{font-size:18px;line-height:1;font-weight:800;letter-spacing:-.02em;color:var(--music-text);font-variant-numeric:tabular-nums;}
    .music-track-chart-trend{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;color:#94a3b8;line-height:1;}
    .music-track-chart-trend svg{display:block;width:9px;height:9px;}
    .music-track-chart-trend.is-up{color:#34d399;}
    .music-track-chart-trend.is-down{color:#fb7185;}
    .music-track-chart-trend.is-same{color:#94a3b8;}
    .music-track-chart-dash{display:block;width:9px;height:2px;border-radius:999px;background:currentColor;}
    .music-track-row,.music-track-row *{-webkit-tap-highlight-color:transparent;}
    .music-track-row:focus-visible{outline:none;}
    @media (hover:hover) and (pointer:fine){
      .music-track-row:hover,.music-track-row:focus-visible{background:rgba(47,124,246,.06);border-color:rgba(47,124,246,.10);}
      .music-track-row.is-active{background:rgba(47,124,246,.09);border-color:rgba(47,124,246,.12);}
      .dark .music-track-row,.dark .music-track-row:hover,.dark .music-track-row:focus-visible,
      :is(html.dark,body.dark) .music-track-row,:is(html.dark,body.dark) .music-track-row:hover,:is(html.dark,body.dark) .music-track-row:focus-visible{background:transparent;}
      .dark .music-track-row:hover,.dark .music-track-row:focus-visible,
      :is(html.dark,body.dark) .music-track-row:hover,:is(html.dark,body.dark) .music-track-row:focus-visible{background:rgba(125,211,252,.08);border-color:rgba(125,211,252,.12);}
      .dark .music-track-row.is-active,
      :is(html.dark,body.dark) .music-track-row.is-active{background:rgba(125,211,252,.10);border-color:rgba(125,211,252,.16);}
    }
    @media (hover:none), (pointer:coarse){
      .music-track-row:hover,.music-track-row:focus-visible,
      .dark .music-track-row:hover,.dark .music-track-row:focus-visible,
      :is(html.dark,body.dark) .music-track-row:hover,:is(html.dark,body.dark) .music-track-row:focus-visible{
        background:transparent;border-color:transparent;outline:none;
      }
      .music-track-row.is-active{background:rgba(47,124,246,.09);border-color:rgba(47,124,246,.12);}
      .dark .music-track-row.is-active,
      :is(html.dark,body.dark) .music-track-row.is-active{background:rgba(125,211,252,.10);border-color:rgba(125,211,252,.16);}
    }
    .music-track-cover{position:relative;width:48px;height:48px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,rgba(59,130,246,.12),rgba(14,165,233,.12));flex:none;}
    .music-track-cover img{display:block;width:100%;height:100%;object-fit:cover;}
    .music-track-cover-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:rgba(59,130,246,.74);}
    .music-track-cover-fallback svg{width:24px;height:24px;}
    .music-track-cover-play{position:absolute;inset:0;border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s ease;}
    .music-track-cover-play-bg{position:absolute;inset:0;background:rgba(2,6,23,.38);backdrop-filter:blur(1.2px);}
    .music-track-play-icon{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:rgba(255,255,255,.95);color:#0f172a;box-shadow:0 10px 18px rgba(15,23,42,.18);}
    .music-track-play-icon svg{width:16px;height:16px;}
    @media (hover:hover){
      .music-track-row:hover .music-track-cover-play,
      .music-track-row:focus-visible .music-track-cover-play,
      .music-track-row.is-active:hover .music-track-cover-play,
      .music-track-row.is-active:focus-visible .music-track-cover-play{opacity:1;pointer-events:auto;}
    }
    .music-track-main{min-width:0;display:flex;flex-direction:column;justify-content:center;margin-left:-2px;}
    .music-track-title-row{display:flex;align-items:center;gap:6px;min-width:0;}
    .music-track-title{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;letter-spacing:-.02em;color:var(--music-text);}
    .music-track-subline{display:flex;align-items:center;gap:8px;min-width:0;margin-top:2px;flex-wrap:wrap;}
    .music-track-author{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--music-muted);}
    .music-track-side{display:flex;align-items:center;gap:10px;justify-self:end;padding-left:8px;}
    .music-explicit-box{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:6px;border:1px solid rgba(47,124,246,.42);color:var(--music-accent);font-size:11px;font-weight:800;line-height:1;}
    .music-track-duration{font-variant-numeric:tabular-nums;font-size:12px;font-weight:700;color:var(--music-muted);}
    [data-render-mode="radio"] .music-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:12px;padding:14px;}
    .music-radio-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:14px;min-height:176px;padding:18px 14px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid var(--music-line);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;overflow:hidden;isolation:isolate;--radio-cover-bg:none;}
    .music-radio-card::before{content:"";position:absolute;inset:-8%;background-image:var(--radio-cover-bg);background-size:cover;background-position:center;filter:blur(26px) saturate(1.18);transform:scale(1.16);opacity:.30;pointer-events:none;z-index:0;}
    .music-radio-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06) 45%,rgba(255,255,255,.03) 100%),radial-gradient(circle at top left, rgba(99,102,241,.10), transparent 48%),radial-gradient(circle at bottom right, rgba(236,72,153,.08), transparent 44%);pointer-events:none;z-index:0;}
    .dark .music-radio-card::after,:is(html.dark,body.dark) .music-radio-card::after{background:linear-gradient(180deg,rgba(7,10,16,.16),rgba(7,10,16,.34) 48%,rgba(7,10,16,.56) 100%),radial-gradient(circle at top left, rgba(96,165,250,.18), transparent 50%),radial-gradient(circle at bottom right, rgba(244,114,182,.14), transparent 44%);}
    .music-radio-card:hover,.music-radio-card:focus-visible{transform:translateY(-2px);border-color:rgba(47,124,246,.20);outline:none;box-shadow:0 18px 32px rgba(15,23,42,.10);}
    .dark .music-radio-card:hover,.dark .music-radio-card:focus-visible,:is(html.dark,body.dark) .music-radio-card:hover,:is(html.dark,body.dark) .music-radio-card:focus-visible{border-color:rgba(125,211,252,.14);box-shadow:0 18px 32px rgba(0,0,0,.22);}
    .music-radio-card-cover{position:relative;z-index:1;width:74px;height:74px;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(15,23,42,.16);}
    .music-radio-card-cover img{display:block;width:100%;height:100%;object-fit:cover;}
    .music-radio-card-play{position:absolute;inset:0;border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s ease;}
    .music-radio-card-title{position:relative;z-index:1;font-size:15px;line-height:1.28;font-weight:700;letter-spacing:-.015em;color:var(--music-text);text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px;}
    @media (hover:hover){.music-radio-card:hover .music-radio-card-play,.music-radio-card:focus-visible .music-radio-card-play{opacity:1;pointer-events:auto;}}
    .music-loader-wrap{padding:8px 0 16px;display:flex;justify-content:center;}
    .music-loader-wrap.hidden{display:none !important;}
    .music-loader-spin{width:36px;height:36px;border-radius:999px;border:2px solid var(--music-line-strong);border-top-color:var(--music-accent);animation:musicHubSpin .8s linear infinite;}
    @keyframes musicHubSpin{to{transform:rotate(360deg);}}
    .music-empty-state,.music-hub-empty-card{margin:10px;padding:22px;border-radius:20px;border:1px dashed var(--music-line-strong);background:var(--music-surface-soft);text-align:center;color:var(--music-muted-2);}
    .music-hub-empty-card{margin:0;}
    .music-hub-empty-icon{margin:0 auto 12px;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:18px;background:var(--music-accent-soft);color:var(--music-accent);}
    .music-hub-empty-icon svg{width:28px;height:28px;}
    .music-hub-empty-title{font-size:18px;font-weight:900;letter-spacing:-.02em;color:var(--music-text);}
    .music-hub-empty-text{margin-top:8px;font-size:14px;line-height:1.6;color:var(--music-muted-2);}
    .music-hub-empty-btn{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 18px;border-radius:999px;background:var(--music-accent);color:#fff;font-size:13px;font-weight:800;text-decoration:none;margin-top:16px;box-shadow:0 14px 24px rgba(47,124,246,.24);}
    .music-hub-search{display:flex;align-items:center;gap:8px;margin-top:10px;padding:6px 10px;border-radius:16px;border:1px solid var(--music-line);background:rgba(255,255,255,.02);}
    .dark .music-hub-search,:is(html.dark,body.dark) .music-hub-search{background:rgba(255,255,255,.01);}
    .music-hub-search-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--music-muted);flex:0 0 auto;}
    .music-hub-search-icon svg{width:16px;height:16px;}
    .music-hub-search-input{flex:1;min-width:0;height:34px;border:0;background:transparent;color:var(--music-text);font-size:14px;outline:none;box-shadow:none;}
    .music-hub-search-input::placeholder{color:var(--music-muted);}
    .music-hub-search-clear,.music-hub-search-submit{border:0;cursor:pointer;transition:.18s ease;}
    .music-hub-search-clear{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:transparent;color:var(--music-muted);flex:0 0 auto;}
    .music-hub-search-clear:hover{background:var(--music-accent-soft);color:var(--music-text);}
    .music-hub-search-clear svg{width:14px;height:14px;}
    .music-hub-search-submit{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border-radius:999px;background:rgba(47,124,246,.14);color:var(--music-text);font-size:12px;font-weight:800;white-space:nowrap;flex:0 0 auto;}
    .music-hub-search-submit:hover{background:rgba(47,124,246,.18);}
    .dark .music-hub-search-submit,:is(html.dark,body.dark) .music-hub-search-submit{background:rgba(125,211,252,.14);}
    .dark .music-hub-search-submit:hover,:is(html.dark,body.dark) .music-hub-search-submit:hover{background:rgba(125,211,252,.18);}
    .music-hub-search-results-wrap.hidden{display:none !important;}    @media (max-width: 640px){
      .music-hub-hero,.music-hub-card{border-radius:24px;}
      .music-hub-hero{padding:14px 14px;}
      .music-hub-hero-tabs-only{padding:12px 14px;}
      .music-hub-title{font-size:28px;}
      .music-hub-subtitle{font-size:14px;}
      .music-hub-card-head{padding:16px 16px 8px;flex-direction:column;align-items:flex-start;}
      .music-hub-card-head-right{width:100%;justify-content:space-between;}
      .music-list{padding:8px 8px 12px;gap:5px;}
      .music-track-row{grid-template-columns:48px minmax(0,1fr) auto;gap:5px;padding:6px 10px 6px 10px;min-height:58px;border-radius:12px;}
      .music-track-row.has-chart-meta{grid-template-columns:24px 44px minmax(0,1fr) auto;gap:6px;padding-left:8px;}
      [data-render-mode="radio"] .music-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;}
      .music-radio-card{min-height:156px;padding:16px 10px 14px;border-radius:18px;gap:12px;}
      .music-radio-card-cover{width:68px;height:68px;border-radius:16px;}
      .music-radio-card-title{font-size:14px;min-height:36px;}
      .music-track-chart-meta{width:24px;gap:2px;}
      .music-track-chart-rank{font-size:15px;}
      .music-track-chart-trend{width:10px;height:10px;}
      .music-track-chart-trend svg{width:8px;height:8px;}
      .music-track-chart-dash{width:8px;}
      .music-track-cover{width:44px;height:44px;border-radius:10px;}
      .music-track-title{font-size:15px;}
      .music-track-author{font-size:12px;}
      .music-track-side{gap:8px;padding-left:6px;}
      .music-track-duration{font-size:11px;}
      .music-hub-tabs{gap:6px;}
      .music-hub-tab{height:32px;padding:0 12px;font-size:11.5px;}
      .music-hub-search{padding:5px 10px;gap:7px;}
      .music-hub-search-input{height:32px;font-size:13px;}
      .music-hub-search-submit{height:32px;padding:0 11px;font-size:11.5px;}
      .music-hub-search-clear{width:28px;height:28px;}
    }

    /* Critical segmented navigation: inline to prevent old-menu FOUC before music_ios.css loads. */
    .music-ui-app .music-hub-hero.music-hub-hero-tabs-only{
      padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
      box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important;
    }
    .music-ui-app .music-hub-tabs{
      display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;
      width:100%!important;margin:0!important;padding:3px!important;box-sizing:border-box!important;
      border:1px solid rgba(118,118,128,.06)!important;border-radius:13px!important;
      background:rgba(118,118,128,.12)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;
    }
    .music-ui-app .music-hub-tab{
      display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;height:35px!important;
      padding:0 10px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;
      color:#7c818a!important;font-size:12px!important;line-height:1!important;font-weight:650!important;text-decoration:none!important;
      white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transform:none!important;
      transition:background .18s ease,color .18s ease,box-shadow .18s ease!important;
    }
    .music-ui-app .music-hub-tab:hover{color:#111318!important;background:rgba(255,255,255,.35)!important;}
    .music-ui-app .music-hub-tab.is-active{color:#111318!important;background:#fff!important;box-shadow:0 1px 4px rgba(0,0,0,.10),0 1px 0 rgba(255,255,255,.8) inset!important;}
    .dark .music-ui-app .music-hub-tabs,:is(html.dark,body.dark) .music-ui-app .music-hub-tabs{background:rgba(118,118,128,.20)!important;}
    .dark .music-ui-app .music-hub-tab,:is(html.dark,body.dark) .music-ui-app .music-hub-tab{color:#98989f!important;}
    .dark .music-ui-app .music-hub-tab:hover,:is(html.dark,body.dark) .music-ui-app .music-hub-tab:hover{color:#f5f5f7!important;background:rgba(255,255,255,.06)!important;}
    .dark .music-ui-app .music-hub-tab.is-active,:is(html.dark,body.dark) .music-ui-app .music-hub-tab.is-active{color:#f5f5f7!important;background:#3a3a3c!important;box-shadow:0 1px 8px rgba(0,0,0,.28),0 1px 0 rgba(255,255,255,.05) inset!important;}
    .music-ui-app .music-hub-search{margin-top:10px!important;}
    @media(max-width:640px){
      .music-ui-app .music-hub-tabs{display:flex!important;grid-template-columns:none!important;gap:3px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;scroll-snap-type:x proximity;}
      .music-ui-app .music-hub-tabs::-webkit-scrollbar{display:none!important;}
      .music-ui-app .music-hub-tab{flex:0 0 auto!important;min-width:max-content!important;height:34px!important;padding:0 12px!important;font-size:11px!important;scroll-snap-align:start;}
    }
