/* Muban7 cinema layout: shared by home, category and mine pages. */
:root {
  --m7-bg: #080b10;
  --m7-surface: #151a21;
  --m7-text: #edf2f6;
  --m7-muted: #97a5b0;
  --m7-line: #2a333e;
  --m7-primary: #67dfca;
  --m7-primary-dark: #0f5149;
  --m7-accent: #e1bd73;
  --m7-shadow: 0 8px 24px rgba(0, 0, 0, .16);
}

html, body { background: var(--m7-bg) !important; color: var(--m7-text) !important; }
body { padding-bottom: 82px !important; }
#app.m7-app { width: min(100%, 1180px); max-width: 1180px; margin: 0 auto; background: var(--m7-bg); }
#app.m7-app, #app.m7-app * { box-sizing: border-box; }
#app.m7-app .box.body.home { padding: 0 22px 100px; }
.m7-topbar { position: sticky; top: 0; z-index: 30; display: grid; grid-template-columns: 150px minmax(180px, 1fr) auto; gap: 28px; align-items: center; min-height: 70px; padding: 12px 22px; background: rgba(242,245,244,.94); border-bottom: 1px solid var(--m7-line); backdrop-filter: blur(18px); }
.m7-brand { color: var(--m7-text); font-size: 21px; font-weight: 900; letter-spacing: -.04em; }
.m7-brand span { color: var(--m7-primary); }
.m7-top-search { display: flex; align-items: center; gap: 10px; width: 100%; height: 42px; padding: 0 16px; border: 1px solid var(--m7-line); border-radius: 13px; background: #fff; color: var(--m7-muted); text-align: left; font-size: 13px; cursor: pointer; }
.m7-top-search i { color: var(--m7-primary); font-size: 15px; }
.m7-top-links { display: flex; align-items: center; gap: 20px; white-space: nowrap; }
.m7-top-links a { color: var(--m7-muted); font-size: 13px; font-weight: 800; }
.m7-top-links a:hover { color: var(--m7-primary); }
.header { display: none !important; }
.home-hero { min-height: 250px; margin: 22px 0 24px; border-radius: 22px !important; background-color: #173b37 !important; background-size: cover; background-position: center; box-shadow: 0 18px 44px rgba(17, 55, 48, .18) !important; }
.home-hero__content { max-width: 650px; padding: 36px 38px; }
.home-hero__eyebrow { display: inline-block; margin-bottom: 12px; color: #b9d8ce; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.home-hero h1 { max-width: 620px; margin: 0; color: #fff !important; font-size: clamp(25px, 4vw, 40px); line-height: 1.2; }
.home-hero p { margin: 12px 0 20px; color: rgba(255,255,255,.74) !important; }
.quick-actions { display: flex; gap: 10px; }
.quick-actions button, .quick-actions a { display: inline-flex; align-items: center; gap: 7px; min-width: 116px; height: 40px; padding: 0 17px; border-radius: 10px; background: #fff; color: var(--m7-primary-dark); font-size: 13px; font-weight: 900; }
.quick-actions button { border: 0; cursor: pointer; }
.section-head { margin-top: 26px; }
.section-head h2 { font-size: 19px; }
.channel { padding: 0; }
.body .channel ul { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 10px; }
.body .channel ul li button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; padding: 8px 5px; border: 1px solid var(--m7-line); border-radius: 11px; background: #fff; color: var(--m7-text); font-size: 12px; font-weight: 800; cursor: pointer; }
.body .channel ul li button:hover, .body .channel ul li button:focus { color: #fff; background: var(--m7-primary); border-color: var(--m7-primary); }
.body .channel ul li a { height: 46px; padding: 8px; }
.body .channel ul li a img, .body .channel ul li a .thumb { display: none; }
#list .video-grid, .video-grid, .list .van-clearfix { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.list .list-item, .list-item { border-radius: 15px !important; box-shadow: var(--m7-shadow) !important; transition: transform .25s ease, box-shadow .25s ease; }
.list .list-item:hover, .list-item:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(20,52,47,.14) !important; }
.list .list-item .thumb, .list-item .thumb { position: relative; aspect-ratio: 16 / 10; }
.m7-duration-badge { position: absolute; right: 7px; bottom: 7px; z-index: 2; padding: 4px 7px; border-radius: 6px; color: #fff; background: rgba(10, 18, 22, .78); font-size: 10px; font-weight: 800; line-height: 1; letter-spacing: .02em; pointer-events: none; backdrop-filter: blur(4px); }
.list .list-item .name, .list-item .name { height: 40px; margin: 11px 12px 4px; font-size: 14px; line-height: 20px; }
.m7-card-meta { display: flex; align-items: center; justify-content: space-between; padding: 0 12px 12px; color: var(--m7-muted); font-size: 11px; }
.m7-card-meta > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m7-favorite { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; padding: 0; border: 1px solid var(--m7-line); border-radius: 50%; background: #fff; color: var(--m7-muted); cursor: pointer; }
.m7-favorite.is-active, .m7-favorite:hover { color: var(--m7-accent); border-color: #efc7b5; background: #fff7f3; }
.footer { width: min(100% - 32px, 520px) !important; border-radius: 18px !important; }
.m7-video-footer { position: fixed; right: 0; bottom: 14px; left: 0; z-index: 25; display: flex; width: min(100% - 32px, 520px) !important; height: 62px; margin: auto; border: 1px solid var(--m7-line); border-radius: 18px !important; background: rgba(255,255,255,.96); box-shadow: 0 12px 30px rgba(20,52,47,.14); backdrop-filter: blur(16px); }
.m7-video-footer ul { display: flex; width: 100%; height: 100%; margin: 0; padding: 0; list-style: none; }
.m7-video-footer li { flex: 1; height: 100%; }
.m7-video-footer li a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; height: 100%; color: var(--m7-muted); font-size: 11px; font-weight: 800; }
.m7-video-footer li img { display: block; width: 20px; height: 20px; object-fit: contain; margin: 0; }
@media (min-width: 901px) { .m7-video-footer { display: none !important; } }

/* Independent member page */
.m7-pagebar { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; height: 68px; padding: 0 22px; border-bottom: 1px solid var(--m7-line); background: rgba(242,245,244,.95); backdrop-filter: blur(16px); }
.m7-pagebar strong { font-size: 18px; }
.m7-pagebar a { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; color: var(--m7-primary); background: #fff; border: 1px solid var(--m7-line); }
.m7-mine-main { width: min(100% - 44px, 980px); margin: 26px auto 110px; }
.m7-account-card { display: flex; align-items: center; gap: 16px; padding: 24px; border-radius: 20px; color: #fff; background: linear-gradient(120deg, #153f39, #25766b); box-shadow: 0 18px 38px rgba(23,107,97,.2); }
.m7-account-avatar { display: grid; place-items: center; width: 64px; height: 64px; overflow: hidden; border: 3px solid rgba(255,255,255,.6); border-radius: 50%; background: rgba(255,255,255,.15); font-size: 23px; font-weight: 900; }
.m7-account-avatar img { width: 100%; height: 100%; object-fit: cover; }
.m7-account-copy { flex: 1; min-width: 0; }
.m7-account-copy strong, .m7-account-copy span { display: block; }
.m7-account-copy strong { overflow: hidden; text-overflow: ellipsis; font-size: 20px; white-space: nowrap; }
.m7-account-copy span { margin-top: 6px; color: rgba(255,255,255,.7); font-size: 13px; }
.m7-account-cta { padding: 9px 16px; border-radius: 999px; background: #fff; color: var(--m7-primary-dark); font-size: 13px; font-weight: 900; }
.m7-account-cta.secondary { color: #fff; background: rgba(255,255,255,.14); }
.m7-stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 16px 0; }
.m7-stats-grid div { padding: 17px; border: 1px solid var(--m7-line); border-radius: 15px; background: #fff; box-shadow: var(--m7-shadow); }
.m7-stats-grid span, .m7-stats-grid strong { display: block; }
.m7-stats-grid span { color: var(--m7-muted); font-size: 12px; }.m7-stats-grid strong { margin-top: 8px; color: var(--m7-text); font-size: 22px; }.m7-stats-grid em { margin-left: 3px; font-size: 12px; font-style: normal; }
.m7-library-section { margin-top: 18px; padding: 20px; border: 1px solid var(--m7-line); border-radius: 18px; background: #fff; box-shadow: var(--m7-shadow); }
.m7-tabs { display: flex; gap: 8px; margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--m7-line); }
.m7-tabs button { padding: 9px 14px; border: 0; border-radius: 999px; background: #f1f5f3; color: var(--m7-muted); font-size: 13px; font-weight: 800; cursor: pointer; }.m7-tabs button.active { color: #fff; background: var(--m7-primary); }
.m7-empty-state { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 54px 20px; color: var(--m7-muted); text-align: center; }.m7-empty-state i { color: var(--m7-primary); font-size: 30px; }.m7-empty-state strong { color: var(--m7-text); font-size: 15px; }.m7-empty-state a { margin-top: 10px; padding: 9px 15px; border-radius: 999px; color: #fff; background: var(--m7-primary); font-size: 13px; font-weight: 800; }
.m7-library-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }.m7-library-card { overflow: hidden; border: 1px solid var(--m7-line); border-radius: 13px; background: #fff; color: var(--m7-text); }.m7-library-thumb { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: #e6eeeb; }.m7-library-thumb img { width: 100%; height: 100%; object-fit: cover; }.m7-library-thumb span { position: absolute; right: 6px; bottom: 6px; padding: 3px 6px; border-radius: 5px; color: #fff; background: rgba(0,0,0,.64); font-size: 10px; }.m7-library-card strong, .m7-library-card small { display: block; overflow: hidden; padding: 0 10px; text-overflow: ellipsis; white-space: nowrap; }.m7-library-card strong { margin-top: 10px; font-size: 13px; }.m7-library-card small { margin: 5px 0 11px; color: var(--m7-muted); font-size: 11px; }
.m7-bottom-nav { position: fixed; right: 0; bottom: 14px; left: 0; z-index: 25; display: flex; width: min(100% - 32px, 520px); height: 62px; margin: auto; border: 1px solid var(--m7-line); border-radius: 18px; background: rgba(255,255,255,.96); box-shadow: 0 12px 30px rgba(20,52,47,.14); backdrop-filter: blur(16px); }.m7-bottom-nav a { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; color: var(--m7-muted); font-size: 11px; font-weight: 800; }.m7-bottom-nav i { font-size: 18px; }.m7-bottom-nav a.active { color: var(--m7-primary); }

/* Quiet entrance motion for the home page. */
.m7-home .m7-topbar, .m7-home .home-hero, .m7-home .section-head, .m7-home .channel, .m7-home .list { animation: m7-rise .55s cubic-bezier(.22,.8,.25,1) both; }.m7-home .home-hero { animation-delay: .06s; }.m7-home .section-head { animation-delay: .12s; }.m7-home .channel { animation-delay: .18s; }.m7-home .list { animation-delay: .24s; }
@keyframes m7-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
@media (max-width: 900px) { #app.m7-app { width: 100%; }.m7-topbar { grid-template-columns: 108px 1fr; gap: 12px; padding: 10px 14px; }.m7-top-links { grid-column: 1 / -1; justify-content: space-around; padding: 2px 0; }.m7-home .box.body.home { padding: 0 14px 94px; }.home-hero { margin-top: 14px; }.body .channel ul { grid-template-columns: repeat(4, minmax(0, 1fr)); }.m7-library-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .m7-home .home-hero { min-height: 210px; }.home-hero__content { padding: 28px 22px; }.m7-top-search { height: 38px; }.m7-mine-main { width: calc(100% - 28px); margin-top: 16px; }.m7-account-card { padding: 18px; }.m7-stats-grid { gap: 8px; }.m7-stats-grid div { padding: 13px 10px; }.m7-stats-grid strong { font-size: 18px; }.m7-library-section { padding: 14px; }.m7-library-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } }
.m7-plans-section{margin-top:16px;padding:18px 20px;border:1px solid var(--m7-line);border-radius:18px;background:#fff;box-shadow:var(--m7-shadow)}
.m7-plans-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.m7-plans-heading strong{font-size:16px}.m7-plans-heading span{color:var(--m7-muted);font-size:12px}.m7-plans-list{display:grid;gap:8px}.m7-plans-list a{display:grid;grid-template-columns:1fr auto auto 15px;align-items:center;gap:10px;padding:12px 13px;border:1px solid var(--m7-line);border-radius:12px;color:var(--m7-text)}.m7-plans-list a span{color:var(--m7-muted);font-size:12px}.m7-plans-list a em{color:var(--m7-accent);font-size:15px;font-style:normal;font-weight:900}.m7-plans-list a i{color:var(--m7-muted)}
.m7-profile-link{display:flex;align-items:center;justify-content:center;color:var(--m7-primary);font-size:13px;font-weight:800;white-space:nowrap}
@media (max-width:900px){.m7-profile-link{grid-column:1 / -1;justify-content:flex-end}.m7-plans-section{padding:15px 14px}}
.m7-category .page-head{grid-template-columns:150px minmax(180px,1fr) auto;gap:28px;min-height:70px;margin:0 -22px 24px;padding:12px 22px;background:rgba(242,245,244,.94);border-bottom:1px solid var(--m7-line);backdrop-filter:blur(18px)}
.m7-category .page-head .m7-brand{display:block}.m7-category .search-box{height:42px}.m7-category .search-box input{border-radius:13px}.m7-category .search-box button{border-radius:10px;background:var(--m7-primary);box-shadow:none}.m7-category .section{padding:0;background:transparent}.m7-category .cat-list{display:flex;gap:8px;overflow-x:auto;padding:2px 1px 8px}.m7-category .cat-list li{flex:0 0 auto}.m7-category .cat-list a{height:38px;min-width:72px;padding:0 14px;border-radius:999px;background:#fff;border:1px solid var(--m7-line);color:var(--m7-muted)!important;font-weight:800}.m7-category .cat-list li:first-child a,.m7-category .cat-list a:hover{color:#fff!important;background:var(--m7-primary);border-color:var(--m7-primary)}.m7-category .list-wrap{margin-top:26px}.m7-category .footer{display:flex}.m7-category .footer img{display:none}.m7-category .footer li{display:flex;align-items:center;justify-content:center}.m7-category .footer li i{display:block;margin:0 auto 4px;color:var(--m7-muted);font-size:18px}.m7-category .footer li.active i{color:var(--m7-primary)}
@media(max-width:900px){.m7-category .page-head{grid-template-columns:108px 1fr;gap:12px;margin:0 -14px 18px;padding:10px 14px}.m7-category .page-head .m7-profile-link{grid-column:1/-1}.m7-category .list-wrap{margin-top:18px}}
@media(max-width:600px){.m7-category .page-head{width:calc(100% + 24px);max-width:calc(100% + 24px);margin-left:-12px;margin-right:-12px;box-sizing:border-box}}

/* Final interaction polish for the m7 shell. */
.m7-app .footer { position: fixed; right: 0; bottom: 14px; left: 0; z-index: 25; display: flex; width: min(100% - 32px, 520px) !important; height: 62px; margin: auto; border: 1px solid var(--m7-line); border-radius: 18px !important; background: rgba(255,255,255,.96); box-shadow: 0 12px 30px rgba(20,52,47,.14); backdrop-filter: blur(16px); }
.m7-app .footer ul { display: flex; width: 100%; height: 100%; margin: 0; padding: 0; list-style: none; }
.m7-app .footer li { flex: 1; height: 100%; }
.m7-app .footer li a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; height: 100%; color: var(--m7-muted); font-size: 11px; font-weight: 800; }
.m7-app .footer li i { display: block; color: inherit; font-size: 18px; line-height: 1; }
.m7-app .footer li.active a, .m7-app .footer li a:hover { color: var(--m7-primary); }
.m7-category .cat-list { scrollbar-width: none; -ms-overflow-style: none; }
.m7-category .cat-list::-webkit-scrollbar { display: none; }
.m7-category .cat-list a { display: flex; align-items: center; justify-content: center; }
.m7-category .cat-list > li:first-child > a,
.m7-category .cat-list > li:first-child > a span,
.m7-category .cat-list a:hover,
.m7-category .cat-list a:hover span { color: #fff !important; background: var(--m7-primary) !important; border-color: var(--m7-primary) !important; }
.m7-category .list-item .thumb { background: linear-gradient(135deg, #dce8e4, #edf3f1); }
.m7-home .home-hero.has-feature { background-image: var(--m7-hero-image) !important; }
/* Navigation is controlled by the page state, never by viewport width. */
@media (min-width: 901px) {
  body { padding-bottom: 0 !important; }
}

/* Keep the video shelf readable on phones: two generous columns, no fixed card height. */
@media (max-width: 600px) {
  #list .video-grid, .video-grid, .list .van-clearfix { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .list .list-item, .list-item { height: auto !important; min-height: 0 !important; }
  .list .list-item .thumb, .list-item .thumb { aspect-ratio: 16 / 10 !important; min-height: 0 !important; }
  .list .list-item .name, .list-item .name { display: -webkit-box !important; height: 40px !important; margin: 10px 12px 4px !important; overflow: hidden !important; font-size: 13px !important; line-height: 20px !important; white-space: normal !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; }
  .m7-card-meta { min-height: 34px; padding: 0 12px 10px !important; }
}

.m7-category-links{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.m7-category-links>a{color:var(--m7-primary);font-size:13px;font-weight:800;white-space:nowrap}
.m7-plans-empty{padding:14px 2px;color:var(--m7-muted);font-size:13px}
.m7-message-entry{display:flex;align-items:center;gap:12px;margin-top:14px;padding:16px 18px;border:1px solid var(--m7-line);border-radius:16px;background:#fff;color:var(--m7-text);box-shadow:var(--m7-shadow)}
.m7-message-entry>i:first-child{color:var(--m7-primary);font-size:20px}
.m7-message-entry span{flex:1}.m7-message-entry strong,.m7-message-entry small{display:block}
.m7-message-entry small{margin-top:4px;color:var(--m7-muted);font-size:12px}
.m7-message-entry>i:last-child{color:var(--m7-muted)}
.m7-message-main{width:min(100% - 44px,760px);margin:26px auto 110px}
.m7-message-heading{margin-bottom:16px}.m7-message-heading h1{margin:0;color:var(--m7-text);font-size:24px}
.m7-message-heading span{display:block;margin-top:6px;color:var(--m7-muted);font-size:13px}
.m7-message-thread{min-height:280px;max-height:58vh;overflow:auto;padding:20px;border:1px solid var(--m7-line);border-radius:18px;background:#fff;box-shadow:var(--m7-shadow)}
.m7-message-row{display:flex;flex-direction:column;align-items:flex-start;margin:12px 0}.m7-message-row.mine{align-items:flex-end}
.m7-message-bubble{max-width:min(80%,520px);padding:11px 14px;border-radius:14px 14px 14px 4px;background:#f1f5f3;color:var(--m7-text);font-size:14px;line-height:1.6;white-space:pre-wrap}
.m7-message-row.mine .m7-message-bubble{border-radius:14px 14px 4px 14px;background:var(--m7-primary);color:#fff}
.m7-message-row time{margin-top:5px;color:var(--m7-muted);font-size:10px}
.m7-message-compose{margin-top:14px;padding:16px;border:1px solid var(--m7-line);border-radius:16px;background:#fff;box-shadow:var(--m7-shadow)}
.m7-message-compose label{display:block;margin-bottom:8px;color:var(--m7-text);font-size:13px;font-weight:800}
.m7-message-compose textarea{display:block;width:100%;resize:vertical;padding:11px;border:1px solid var(--m7-line);border-radius:10px;outline:0;font:inherit}
.m7-message-compose textarea:focus{border-color:var(--m7-primary)}
.m7-message-compose>div{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.m7-message-compose span{color:var(--m7-muted);font-size:12px}
.m7-message-compose button{padding:9px 16px;border:0;border-radius:9px;background:var(--m7-primary);color:#fff;font-size:13px;font-weight:800;cursor:pointer}
.m7-message-compose button:disabled{opacity:.5}
@media(max-width:900px){.m7-category-links{grid-column:1/-1;justify-content:flex-end;gap:14px}.m7-category .page-head .m7-profile-link{grid-column:auto}.m7-message-main{width:calc(100% - 28px);margin-top:16px}}

.m7-category .section{margin:16px 0 0;padding:0;border:0;box-shadow:none}
.m7-category .section-title{margin:0 0 13px;font-size:18px;color:var(--m7-text)}
.m7-category .section-title:before{display:none}
.m7-category .cat-scroll{overflow:visible}
.m7-category .cat-list{flex-wrap:wrap;overflow:visible;gap:8px}
.m7-category .cat-list a{min-width:0;padding:0 16px;border-radius:8px;transition:background .2s,color .2s}
.m7-category .cat-list>li:first-child>a:not(.is-active),.m7-category .cat-list>li:first-child>a:not(.is-active) span{color:var(--m7-muted)!important;background:#fff!important;border-color:var(--m7-line)!important}
.m7-category .cat-list a.is-active,.m7-category .cat-list a.is-active span{color:#fff!important;background:var(--m7-primary)!important;border-color:var(--m7-primary)!important}
.m7-category-results{display:flex;justify-content:space-between;align-items:baseline;margin:16px 0 14px;border-bottom:1px solid var(--m7-line);padding-bottom:12px}
.m7-category-results h2{margin:0;font-size:18px;color:var(--m7-text)}
.m7-category-results span{font-size:12px;color:var(--m7-muted)}
.m7-category .list-wrap{margin-top:12px}.m7-category .list-item{overflow:hidden;border-radius:10px!important;box-shadow:none!important;border:1px solid var(--m7-line)}
.m7-category .list-item .plays{margin:0 12px 12px;color:var(--m7-muted);font-size:11px}
@media(max-width:600px){.m7-category .cat-list{flex-wrap:nowrap;overflow-x:auto}.m7-category .page-head{grid-template-columns:1fr auto;gap:10px}.m7-category .page-head .search-box{grid-column:1/-1;grid-row:2}.m7-category .page-head .m7-category-links{grid-column:2;grid-row:1}.m7-category .page-head .m7-brand{grid-column:1;grid-row:1}.m7-category .search-box{grid-template-columns:1fr 56px}}

/* Desktop shelf fix and premium surface polish. The legacy theme sets a 45vw
   card height; reset it so lazy placeholders cannot stretch the whole row. */
.m7-home .video-grid,
.m7-category .video-grid {
  align-items: start !important;
  grid-auto-rows: max-content;
}
.m7-home .list .list-item,
.m7-category .list-item {
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
}
.m7-home .list .list-item > div,
.m7-category .list-item > div {
  height: auto !important;
}
.m7-home .list .list-item .thumb,
.m7-category .list-item .thumb {
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
}
.m7-home .list .list-item .name,
.m7-category .list-item .name {
  white-space: normal !important;
}

html, body {
  background:
    radial-gradient(circle at 8% -8%, rgba(42,131,120,.12), transparent 30%),
    radial-gradient(circle at 96% 0%, rgba(194,106,69,.08), transparent 24%),
    var(--m7-bg) !important;
}
.m7-topbar, .m7-category .page-head, .m7-pagebar {
  background: rgba(242,245,244,.88) !important;
  box-shadow: 0 8px 24px rgba(23,59,60,.06);
}
.home-hero {
  isolation: isolate;
  box-shadow: 0 22px 50px rgba(17,55,48,.22) !important;
}
.home-hero::after {
  content: "";
  position: absolute;
  inset: auto -10% -58% 48%;
  height: 180px;
  border-radius: 50%;
  background: rgba(245,211,111,.13);
  transform: rotate(-10deg);
  pointer-events: none;
}
.m7-home .list-item, .m7-category .list-item, .m7-library-card {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.m7-home .list-item:hover, .m7-category .list-item:hover, .m7-library-card:hover {
  border-color: rgba(23,107,97,.28) !important;
  box-shadow: 0 18px 36px rgba(23,59,60,.14) !important;
}
.m7-message-thread:empty { min-height: 180px; }

/* A stronger cinema identity without obscuring the actual video artwork. */
:root {
  --m7-bg: #edf2f1;
  --m7-text: #172624;
  --m7-muted: #657572;
  --m7-primary: #176b61;
  --m7-accent: #bd7048;
}
.m7-topbar, .m7-category .page-head {
  background: #152b2a !important;
  border-color: rgba(255,255,255,.08) !important;
}
.m7-topbar .m7-brand, .m7-category .m7-brand { color: #f7faf9; }
.m7-topbar .m7-brand span, .m7-category .m7-brand span { color: #f5d36f; }
.m7-top-links a, .m7-category-links > a { color: #d4e1dd; }
.m7-top-links a:hover, .m7-category-links > a:hover { color: #f5d36f; }
.m7-top-search, .m7-category .search-box input {
  border-color: rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.08) !important;
  color: #e6f0ed !important;
}
.m7-top-search i, .m7-category .search-box input::placeholder { color: #a9c0b9 !important; }
.m7-home .home-hero {
  border-radius: 8px !important;
  background-position: center 36%;
}
.m7-home .home-hero.has-feature { background-image: var(--m7-hero-image) !important; }
.home-hero__content { position: relative; z-index: 1; }
.home-hero h1 { max-width: 600px; font-size: 32px; line-height: 1.22; }
.quick-actions button { background: #f5d36f; color: #173b3c; }
.quick-actions a { color: #fff; background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.24); }
.m7-home .channel { margin-bottom: 2px; border: 0; box-shadow: none !important; background: transparent !important; }
.m7-home .body .channel ul { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 8px; scrollbar-width: none; }
.m7-home .body .channel ul::-webkit-scrollbar { display: none; }
.m7-home .body .channel ul li { flex: 0 0 auto; width: auto !important; }
.m7-home .body .channel ul li button {
  min-height: 38px; padding: 6px 15px; border-radius: 6px;
  background: rgba(255,255,255,.7); font-weight: 700;
}
.m7-home .list .list-item, .m7-category .list-item {
  border-radius: 8px !important; border: 1px solid #dce6e3 !important;
  box-shadow: 0 4px 18px rgba(23,59,60,.05) !important;
}
.m7-home .list .list-item .thumb, .m7-category .list-item .thumb { background: #dce7e3 !important; }
.m7-home .list .list-item .name, .m7-category .list-item .name { font-weight: 750; }
.m7-card-meta { min-height: 38px; }
.m7-favorite { border-radius: 6px; }
.m7-category .section, .m7-category .list-wrap { padding-right: 22px; padding-left: 22px; }
.m7-category .section { margin-top: 22px; }
.m7-category .cat-list a { border-radius: 6px; background: rgba(255,255,255,.7); }
.m7-message-thread { display: flex; flex-direction: column; justify-content: center; min-height: 200px; border-radius: 8px; }
.m7-message-thread:has(.m7-message-row) { justify-content: flex-start; }
.m7-message-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 28px 12px; color: var(--m7-muted); text-align: center; }
.m7-message-empty i { color: var(--m7-primary); font-size: 28px; }
.m7-message-empty strong { color: var(--m7-text); font-size: 15px; }
.m7-message-empty span { font-size: 12px; }
.m7-message-compose, .m7-message-entry, .m7-plans-section, .m7-library-section { border-radius: 8px; }
.m7-mine .m7-account-card { border-radius: 8px; background: linear-gradient(115deg,#173b3c,#245f56); }
.m7-mine .m7-plans-section, .m7-mine .m7-library-section { box-shadow: 0 4px 18px rgba(23,59,60,.06); }
.m7-mine .m7-stats-grid div { border-radius: 8px; box-shadow: none; }
@media (max-width: 900px) {
  .m7-category .section, .m7-category .list-wrap { padding-right: 14px; padding-left: 14px; }
  .m7-topbar { gap: 8px; }
}
@media (max-width: 600px) {
  .home-hero h1 { font-size: 27px; }
  .m7-home .home-hero { min-height: 255px; }
  .m7-topbar .m7-top-links { border-top: 1px solid rgba(255,255,255,.1); }
  .m7-top-search { height: 38px; }
}

/* Mobile-first detail page and rotating home recommendations. */
.m7-video-head {
  position: sticky;
  top: 0;
  z-index: 22;
  display: grid;
  grid-template-columns: 38px 1fr 38px;
  align-items: center;
  gap: 10px;
  height: 54px;
  padding: 0 12px;
  background: rgba(21,43,42,.96);
  color: #fff;
  box-shadow: 0 8px 20px rgba(0,0,0,.14);
}
.m7-video-back, .m7-video-head-home {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 9px;
  background: rgba(255,255,255,.08);
  color: #f5d36f;
  font-size: 20px;
}
.m7-video-back { padding: 0; cursor: pointer; }
.m7-video-head-title { text-align: center; font-size: 15px; font-weight: 800; }
.m7-video-intro {
  margin: 0 12px 14px;
  padding: 15px;
  border: 1px solid var(--m7-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(23,59,60,.06);
}
.m7-video-intro-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.m7-video-intro-title strong { color: var(--m7-text); font-size: 15px; }
.m7-video-intro-title span { color: var(--m7-primary); font-size: 11px; }
.m7-video-intro p { margin: 10px 0 0; color: var(--m7-muted); font-size: 13px; line-height: 1.75; white-space: normal; }
.m7-video-details {
  margin: 0 12px 14px;
  padding: 15px;
  border: 1px solid var(--m7-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(23,59,60,.06);
}
.m7-detail-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.m7-detail-heading strong { color:var(--m7-text); font-size:15px; }
.m7-detail-heading span { color:var(--m7-primary); font-size:11px; }
.m7-detail-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:12px; }
.m7-detail-meta > div, .m7-detail-stats > div { min-width:0; padding:9px 10px; border-radius:9px; background:#f4f8f6; }
.m7-detail-meta span, .m7-detail-stats span { display:block; color:var(--m7-muted); font-size:11px; line-height:1.4; }
.m7-detail-meta strong, .m7-detail-stats strong { display:block; margin-top:3px; overflow-wrap:anywhere; color:var(--m7-text); font-size:13px; line-height:1.45; }
.m7-detail-heading-stat { margin-top:17px; padding-top:14px; border-top:1px solid var(--m7-line); }
.m7-detail-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:12px; }
.m7-detail-text { margin-top:14px; padding-top:13px; border-top:1px solid var(--m7-line); }
.m7-detail-text h3 { margin:0 0 7px; color:var(--m7-text); font-size:14px; }
.m7-detail-text p { margin:0; color:var(--m7-muted); font-size:13px; line-height:1.75; white-space:normal; overflow-wrap:anywhere; word-break:break-word; }
.m7-detail-empty { margin:12px 0 0; color:var(--m7-muted); font-size:13px; }
.m7-hero-dots { position: absolute; right: 20px; bottom: 17px; z-index: 2; display: flex; gap: 6px; }
.m7-hero-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.48); cursor: pointer; }
.m7-hero-dots button.active { width: 22px; border-radius: 99px; background: #f5d36f; }
.m7-home .home-hero { transition: background-image .35s ease; }
@media (max-width: 600px) {
  .m7-home .m7-topbar { grid-template-columns: 96px 1fr; min-height: 58px; padding: 9px 12px; }
  .m7-home .m7-top-search { min-width: 0; }
  .m7-home .m7-top-links { display: none !important; }
  .m7-home .home-hero { margin-top: 12px; min-height: 255px; }
  .m7-video-head { height: 52px; }
  .m7-video-intro, .m7-video-details { margin-right: 12px; margin-left: 12px; }
  .m7-detail-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Dark mobile library presentation. The home shelf keeps a stable frame while categories stay easy to reach. */
html, body { background: #07090d !important; color: #eef2f5 !important; }
#app.m7-app { background: #07090d !important; color: #eef2f5 !important; }
#app.m7-app .box.body.home { background: transparent !important; }
.m7-home .m7-topbar { grid-template-columns: auto minmax(0, 1fr) auto auto; min-height: 58px; padding: 9px 12px; background: rgba(8,11,16,.96) !important; border-color: rgba(255,255,255,.09) !important; }
.m7-category-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 5px; width: 68px; height: 36px; padding: 0 8px; border: 1px solid rgba(255,255,255,.11); border-radius: 9px; background: #171b23; color: #e7edf1; font-size: 11px; font-weight: 800; cursor: pointer; }
.m7-category-trigger i { font-size: 13px; }
.m7-category-trigger span { white-space: nowrap; }
.m7-home-footer { display: none !important; }
.m7-home .footer { display: none !important; }
.m7-home .m7-brand { justify-self: center; font-size: 19px; }
.m7-home .m7-top-search { justify-self: end; width: 40px; height: 36px; padding: 0; justify-content: center; border-radius: 9px; background: #171b23 !important; }
.m7-home .m7-top-search span { display: none; }
.m7-account-trigger { display: inline-grid; width: 40px; height: 36px; place-items: center; border: 1px solid rgba(255,255,255,.11); border-radius: 9px; background: #171b23; color: #d9e1e7; cursor: pointer; }
.m7-account-trigger i { font-size: 14px; }
.m7-home .home-hero { height: 278px !important; min-height: 278px !important; max-height: 278px !important; margin: 12px 0 22px; padding: 0 !important; overflow: hidden; border: 1px solid rgba(255,255,255,.12) !important; border-radius: 16px !important; background-color: #151b24 !important; box-shadow: 0 20px 44px rgba(0,0,0,.34) !important; }
.m7-home .home-hero__content { display: flex; flex-direction: column; justify-content: flex-start; height: 100%; box-sizing: border-box; padding: 26px 22px 20px; }
.m7-home .home-hero h1 { display: -webkit-box; max-width: 100%; margin: 0; overflow: hidden; color: #fff !important; font-size: 25px; line-height: 1.25; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.m7-home .home-hero p { margin-top: 8px; color: #b7c2cd !important; }
.m7-home .home-hero .quick-actions { margin-top: auto; }
.m7-home .section-head h2 { color: #f3f6f8 !important; }
.m7-home .section-head a, .m7-home .section-head span { color: #8793a1 !important; }
.m7-home .channel { padding: 10px 12px; border: 1px solid rgba(255,255,255,.08) !important; border-radius: 14px; background: #11151c !important; box-shadow: 0 12px 30px rgba(0,0,0,.2) !important; }
.m7-home .body .channel ul { gap: 8px; scroll-snap-type: x proximity; }
.m7-home .body .channel ul li { scroll-snap-align: start; }
.m7-home .body .channel ul li button { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 13px; border: 1px solid rgba(255,255,255,.08); border-radius: 9px; background: #1a1f28; color: #cbd4dc; font-size: 12px; }
.m7-home .body .channel ul li button i { color: #f5b84b; font-size: 11px; }
.m7-home .body .channel ul li button:active, .m7-home .body .channel ul li button:focus { border-color: #f5b84b; background: #322719; color: #fff; }
.m7-home .list .list-item, .m7-category .list-item { border: 1px solid rgba(255,255,255,.09) !important; background: #11151c !important; box-shadow: 0 10px 26px rgba(0,0,0,.22) !important; }
.m7-home .list .list-item .thumb, .m7-category .list-item .thumb { background: #171c24 !important; }
.m7-home .list .list-item .name, .m7-category .list-item .name { color: #edf2f5 !important; }
.m7-home .m7-card-meta, .m7-category .plays { color: #8d99a5 !important; }
.m7-home .m7-favorite { border-color: rgba(255,255,255,.12); background: #191e27; color: #aab4bf; }
.m7-category-overlay { position: fixed; inset: 0; z-index: 80; background: rgba(0,0,0,.68); backdrop-filter: blur(3px); }
.m7-category-drawer { position: fixed; top: 0; bottom: 0; left: 0; z-index: 81; width: min(84vw, 330px); overflow-y: auto; padding: 18px 14px 28px; box-sizing: border-box; background: #0e1218; border-right: 1px solid rgba(255,255,255,.1); box-shadow: 18px 0 50px rgba(0,0,0,.38); animation: m7-drawer-in .22s ease both; }
.m7-category-drawer-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; color: #f4f7f9; }
.m7-category-drawer-head strong { font-size: 18px; }
.m7-category-drawer-head button { width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.1); border-radius: 9px; background: #181d25; color: #d7dee4; }
.m7-drawer-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin-top: 8px; }
.m7-drawer-item { display: flex; align-items: center; gap: 8px; min-height: 42px; width: 100%; padding: 9px 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 9px; background: #161b23; color: #c5ced7; text-align: left; font-size: 12px; cursor: pointer; }
.m7-drawer-item i { flex: 0 0 auto; color: #f5b84b; }
.m7-drawer-item span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.m7-drawer-item.is-active { border-color: rgba(245,184,75,.5); background: #302518; color: #fff; }
.m7-category .page-head { background: rgba(8,11,16,.96) !important; border-color: rgba(255,255,255,.09) !important; }
.m7-category .section, .m7-category .list-wrap { background: transparent !important; }
.m7-category .section-title, .m7-category-results h2 { color: #f3f6f8 !important; }
.m7-category .cat-list a { border-color: rgba(255,255,255,.08) !important; background: #151a22 !important; color: #cbd4dc !important; }
.m7-category .cat-list a.is-active, .m7-category .cat-list a:hover { border-color: rgba(245,184,75,.55) !important; background: #332719 !important; color: #fff !important; }
.m7-category .cat-list a span { color: inherit !important; }
@keyframes m7-drawer-in { from { opacity: 0; transform: translateX(-18px); } to { opacity: 1; transform: translateX(0); } }
@media (min-width: 601px) {
  .m7-home .home-hero { height: 310px !important; min-height: 310px !important; max-height: 310px !important; }
}

#app.m7-home .footer, #app.m7-home .m7-bottom-nav, #app.m7-home + .footer { display:none !important; }
@media (max-width:600px){.m7-home .m7-category-trigger{width:68px;min-width:68px;white-space:nowrap;}.m7-home .m7-category-trigger span{display:inline-block;white-space:nowrap;}}

/* Premium membership cards */
.m7-mine .m7-plans-section { padding: 20px 16px 16px; border: 1px solid rgba(255,255,255,.1); background: linear-gradient(150deg,#141a23 0%,#0c1118 100%); box-shadow: 0 18px 42px rgba(0,0,0,.26); color: #edf2f6; }
.m7-plans-heading { align-items: flex-end; margin-bottom: 15px; }
.m7-plans-heading > div { min-width: 0; }
.m7-plans-kicker { display: block; margin-bottom: 6px; color: #f5b84b; font-size: 10px; font-weight: 900; letter-spacing: .18em; }
.m7-plans-heading strong { display: block; color: #fff; font-size: 20px; }
.m7-plans-heading p { margin: 6px 0 0; color: #85919e; font-size: 12px; }
.m7-plans-status { max-width: 38%; color: #9aa5b1; font-size: 11px; text-align: right; }
.m7-plans-benefit-row { display: flex; gap: 7px; margin-bottom: 13px; overflow-x: auto; scrollbar-width: none; }
.m7-plans-benefit-row::-webkit-scrollbar { display: none; }
.m7-plans-benefit-row span { flex: 0 0 auto; padding: 7px 9px; border: 1px solid rgba(245,184,75,.16); border-radius: 999px; background: rgba(245,184,75,.06); color: #bdc7d0; font-size: 10px; }
.m7-plans-benefit-row i { margin-right: 4px; color: #f5b84b; }
.m7-plans-list { gap: 10px; }
.m7-plan-card { position: relative; display: block !important; overflow: hidden; padding: 16px !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 15px !important; background: linear-gradient(145deg,#1a212c,#121821) !important; color: #eef3f7 !important; box-shadow: 0 10px 22px rgba(0,0,0,.16); transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.m7-plan-card:hover { transform: translateY(-2px); border-color: rgba(245,184,75,.5) !important; box-shadow: 0 16px 28px rgba(0,0,0,.25); }
.m7-plan-card.is-featured { border-color: rgba(245,184,75,.55) !important; background: linear-gradient(145deg,#2a241b,#171b22) !important; }
.m7-plan-card.is-lifetime { border-color: rgba(163,130,255,.45) !important; background: linear-gradient(145deg,#211d31,#141821) !important; }
.m7-plan-ribbon { position: absolute; top: 0; right: 0; padding: 5px 9px; border-radius: 0 0 0 9px; background: #f5b84b; color: #181c22; font-size: 10px; font-weight: 900; }
.m7-plan-ribbon.lifetime { background: #9d83f5; color: #fff; }
.m7-plan-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.m7-plan-top strong, .m7-plan-top span { display: block; }
.m7-plan-top strong { color: #fff; font-size: 16px; }
.m7-plan-top span { margin-top: 5px; color: #8e9aa7; font-size: 11px; }
.m7-plan-top > i { color: #697582; font-size: 17px; }
.m7-plan-price { display: flex; align-items: baseline; gap: 9px; margin-top: 14px; }
.m7-plan-price em { color: #f5c45c; font-size: 24px; font-style: normal; font-weight: 900; }
.m7-plan-price span { color: #8f9ba7; font-size: 11px; }
.m7-plan-card ul { display: grid; gap: 6px; margin: 13px 0 0; padding: 12px 0 0; border-top: 1px solid rgba(255,255,255,.08); list-style: none; }
.m7-plan-card li { color: #aeb8c2; font-size: 11px; line-height: 1.45; }
.m7-plan-card li i { margin-right: 7px; color: #6dd6ad; }

/* Mobile first authentication sheet shared by the home page actions. */
body.m7-auth-open { overflow: hidden !important; }
.m7-auth-backdrop { position: fixed; inset: 0; z-index: 1200; display: flex; align-items: flex-end; justify-content: center; padding: 16px; background: rgba(3,7,12,.72); backdrop-filter: blur(12px); animation: m7-auth-fade .2s ease both; }
.m7-auth-sheet { position: relative; width: min(100%, 430px); max-height: min(760px, calc(100vh - 28px)); overflow-y: auto; padding: 28px 22px 20px; border: 1px solid rgba(255,255,255,.12); border-radius: 24px 24px 18px 18px; background: linear-gradient(160deg, #171d27 0%, #0d1118 100%); color: #eef3f7; box-shadow: 0 -18px 60px rgba(0,0,0,.35); animation: m7-auth-rise .28s cubic-bezier(.22,.8,.25,1) both; }
.m7-auth-close { position: absolute; top: 15px; right: 15px; z-index: 2; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; background: rgba(255,255,255,.06); color: #9aa6b3; cursor: pointer; pointer-events:auto; }
.m7-auth-mark { display: flex; align-items: center; gap: 9px; color: #f5ba54; font-size: 13px; font-weight: 900; letter-spacing: .08em; }
.m7-auth-mark i { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; background: linear-gradient(135deg, #f5ba54, #d77a30); color: #10151b; font-size: 12px; }
.m7-auth-sheet h2 { margin: 20px 0 6px; color: #fff; font-size: 25px; line-height: 1.2; }
.m7-auth-subtitle { margin: 0; color: #8f9baa; font-size: 13px; line-height: 1.6; }
.m7-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; margin: 22px 0 18px; padding: 4px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: #0a0e14; }
.m7-auth-tabs button { height: 36px; border: 0; border-radius: 9px; background: transparent; color: #8d99a7; font-size: 13px; font-weight: 800; cursor: pointer; }
.m7-auth-tabs button.active { background: #f5b84b; color: #161b22; box-shadow: 0 5px 16px rgba(245,184,75,.2); }
.m7-auth-form { display: grid; gap: 13px; }
.m7-auth-form label { display: grid; gap: 7px; color: #abb6c2; font-size: 11px; font-weight: 800; letter-spacing: .02em; }
.m7-auth-form input:not([type=checkbox]) { width: 100%; box-sizing: border-box; height: 46px; padding: 0 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 11px; outline: none; background: #111721; color: #f5f7fa; font-size: 14px; transition: border-color .2s, box-shadow .2s; }
.m7-auth-form input:not([type=checkbox])::placeholder { color: #5f6b78; }
.m7-auth-form input:not([type=checkbox]):focus { border-color: #f5b84b; box-shadow: 0 0 0 3px rgba(245,184,75,.13); }
.m7-auth-check { display: flex !important; grid-template-columns: auto 1fr; align-items: center; gap: 8px !important; color: #8793a1 !important; font-size: 12px !important; font-weight: 500 !important; }
.m7-auth-check input { accent-color: #f5b84b; }
.m7-auth-submit { height: 47px; margin-top: 4px; border: 0; border-radius: 11px; background: linear-gradient(135deg, #f5c45c, #df8c36); color: #171b22; font-size: 14px; font-weight: 900; cursor: pointer; box-shadow: 0 10px 24px rgba(220,133,46,.2); }
.m7-auth-submit:disabled { opacity: .58; cursor: wait; }
.m7-auth-error { margin: 12px 0 0; padding: 10px 11px; border: 1px solid rgba(255,105,105,.25); border-radius: 9px; background: rgba(180,55,55,.12); color: #ff9b9b; font-size: 12px; line-height: 1.5; }
.m7-auth-foot { margin: 17px 0 0; color: #64707d; text-align: center; font-size: 10px; }
@keyframes m7-auth-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes m7-auth-rise { from { opacity: 0; transform: translateY(28px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (min-width: 601px) { .m7-auth-backdrop { align-items: center; }.m7-auth-sheet { border-radius: 24px; } }

/* Unified mobile navigation and horizontal membership cards */
.m7-app .footer, .m7-bottom-nav, .m7-video-footer { background: rgba(17,24,33,.96) !important; border-color: #263241 !important; box-shadow: 0 14px 34px rgba(0,0,0,.30) !important; }
.m7-app .footer li a, .m7-bottom-nav a, .m7-video-footer li a { color: #8b98a8 !important; }
.m7-app .footer li.active a, .m7-bottom-nav a.active, .m7-video-footer li.active a { color: #67dfca !important; }
#app.m7-home .footer, #app.m7-home .m7-bottom-nav, #app.m7-home + .footer, #app.m7-home .m7-home-footer { display: flex !important; }
.m7-mine .m7-plans-list { display: flex !important; gap: 12px !important; overflow-x: auto; padding: 3px 2px 10px; scroll-snap-type: x mandatory; scrollbar-width: none; }
.m7-mine .m7-plans-list::-webkit-scrollbar { display: none; }
.m7-mine .m7-plans-list > a { flex: 0 0 min(82vw, 320px); scroll-snap-align: start; min-height: 190px; }
.m7-category .cat-list { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; padding-bottom: 10px !important; scrollbar-width: none; }
.m7-category .cat-list::-webkit-scrollbar { display: none; }
.m7-category .cat-list li { flex: 0 0 auto !important; }
.m7-category .cat-list a { min-width: 84px !important; }

/* Final shared shell colors for all four mobile pages */
.footer, .m7-video-footer { background: rgba(17,24,33,.96) !important; border-color: #263241 !important; box-shadow: 0 14px 34px rgba(0,0,0,.30) !important; }
.footer li a, .m7-video-footer li a { color: #8b98a8 !important; }
.footer li.active a, .m7-video-footer li.active a { color: #67dfca !important; }
.m7-pagebar, .m7-video-head { background: #080b10 !important; border-color: #263241 !important; color: #edf2f6 !important; }
.m7-pagebar a, .m7-video-back, .m7-video-head-home { background: #111821 !important; border-color: #263241 !important; color: #67dfca !important; }

/* Final dark detail presentation and category card actions */
.m7-category .cat-card-meta { display:flex; align-items:center; justify-content:space-between; min-height:28px; margin:0 10px 10px; color:#8d99a5; font-size:12px; }
.m7-category .cat-card-meta .m7-favorite { display:grid; place-items:center; width:28px; height:28px; padding:0; border:1px solid rgba(255,255,255,.12); border-radius:8px; background:#191e27; color:#9aa6b3; cursor:pointer; }
.m7-category .cat-card-meta .m7-favorite.is-active { border-color:rgba(245,184,75,.65); color:#f5c45c; background:rgba(245,184,75,.12); }
.m7-category .cat-filter-shell { position:relative; }
.m7-category .cat-list-primary { width:calc(100% - 92px) !important; padding-right:0 !important; }
.m7-category .cat-more-trigger { position:absolute; top:0; right:0; display:inline-flex; align-items:center; justify-content:center; gap:5px; min-width:82px; height:38px; padding:0 10px; border:1px solid rgba(255,255,255,.12); border-radius:8px; background:#151a22; color:#cbd4dc; font-size:12px; font-weight:800; cursor:pointer; }
.m7-category .cat-more-trigger i { transition:transform .2s ease; }
.m7-category .cat-more-trigger.is-open i { transform:rotate(180deg); }
.m7-category .cat-more-panel { margin-top:8px; padding:10px 10px 2px; border:1px solid rgba(255,255,255,.09); border-radius:12px; background:#0f141b; animation:m7-category-panel-in .18s ease both; }
.m7-category .cat-more-panel .cat-list { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); flex-wrap:initial !important; gap:8px !important; overflow:visible !important; padding:0 !important; }
.m7-category .cat-more-panel .cat-list li { min-width:0; }
.m7-category .cat-more-panel .cat-list a { width:100%; min-width:0 !important; padding:0 6px; }
@keyframes m7-category-panel-in { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:translateY(0); } }

/* The drawer and category page share the same nested directory. */
.m7-category-tree { margin:0; padding:0; color:#dbe3e8; }
.m7-category-tree ul { margin:0; padding:0; list-style:none; }
.m7-category-tree .m7-tree-item { margin:0; border-bottom:1px solid #252b33; }
.m7-category-tree summary { display:flex; align-items:center; gap:10px; min-height:46px; padding:8px 4px; list-style:none; cursor:pointer; font-size:14px; font-weight:600; }
.m7-category-tree summary::-webkit-details-marker,
.m7-category-picker > summary::-webkit-details-marker { display:none; }
.m7-category-tree summary > span { flex:1; min-width:0; overflow-wrap:anywhere; }
.m7-category-tree summary > small { color:#83929c; font-size:11px; font-weight:400; }
.m7-category-tree summary > i { flex:none; width:12px; color:#b6a278; font-size:10px; transition:transform .18s; }
.m7-category-tree details[open] > summary > i { transform:rotate(90deg); }
.m7-category-tree .m7-tree-all,
.m7-category-tree .m7-tree-link { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:42px; padding:8px 12px; box-sizing:border-box; border:0; border-radius:6px; background:transparent; color:#aebbc5; font-size:13px; text-decoration:none; }
.m7-category-tree .m7-tree-all { justify-content:flex-start; margin-bottom:8px; }
.m7-category-tree .m7-tree-link span { min-width:0; overflow-wrap:anywhere; }
.m7-category-tree .m7-tree-link i { flex:none; color:#8b969f; }
.m7-category-tree .m7-tree-all.is-active,
.m7-category-tree .m7-tree-link.is-active { background:#30281b; color:#e7c781; }
.m7-category-tree .m7-tree-link:hover { background:#20272f; color:#f1f4f6; }
.m7-category-tree details > ul { margin:0 0 10px 9px; padding-left:15px; border-left:1px solid #343c45; }
.m7-category-tree details > .m7-tree-link { margin-left:24px; font-size:12px; color:#b9a77e; }
.m7-category-tree details > ul > li { border:0; }
.m7-category-drawer { overscroll-behavior:contain; padding-bottom:calc(28px + env(safe-area-inset-bottom)); }
#app.m7-category .section.m7-category-filter { margin-top:0; padding:0 14px 12px; border:0; border-bottom:1px solid #28313b; border-radius:0; box-shadow:none; background:transparent !important; }
.m7-category-picker > summary { display:flex; align-items:center; gap:10px; min-height:48px; list-style:none; cursor:pointer; }
.m7-category-picker > summary strong { flex:1; color:#eef1f3; font-size:14px; }
.m7-category-picker > summary span { max-width:55%; color:#b6a278; font-size:12px; overflow-wrap:anywhere; }
.m7-category-picker > summary i { color:#83929c; font-size:11px; }
.m7-category-picker[open] > summary i { transform:rotate(180deg); }
.m7-category-picker .m7-category-tree { max-height:320px; overflow-y:auto; overscroll-behavior:contain; padding-right:4px; }
#app.m7-app .m7-card-meta > span,
#app.m7-category .cat-card-meta > span { display:inline-flex; align-items:center; gap:5px; color:#a9b6be; font-size:12px; line-height:20px; white-space:nowrap; }
@media(max-width:600px){
  .m7-category .cat-list-primary { width:100% !important; display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px !important; overflow:visible !important; padding:0 !important; }
  .m7-category .cat-list-primary li { min-width:0 !important; }
  .m7-category .cat-list-primary a { width:100%; min-width:0 !important; padding:0 8px; }
  .m7-category .cat-more-trigger { position:relative; top:auto; right:auto; width:100%; min-width:0; margin-top:8px; }
}

/* Shared dark mobile surface: homepage, categories, details and mine use one palette. */
@media(max-width:600px){
  html, body, #app.m7-app, #app.m7-app .box.body { background:#070b10 !important; color:#edf3f4 !important; }
  #app.m7-app .section, #app.m7-app .m7-video-details, #app.m7-app .m7-library-section { background:#101821 !important; border-color:#263542 !important; }
  #app.m7-app .section-title, #app.m7-app .m7-category-results h2, #app.m7-app .m7-detail-heading strong { color:#f2f6f7 !important; }
  #app.m7-app .list-item, #app.m7-app .m7-library-card { background:#111a24 !important; border-color:#2b3947 !important; }
  #app.m7-app .list-item .name, #app.m7-app .m7-library-card strong { color:#f2f6f7 !important; }
  #app.m7-app .list-item .plays, #app.m7-app .m7-library-card small, #app.m7-app .m7-category-results span { color:#91a5aa !important; }
  #app.m7-category .page-head, #app.m7-app .m7-video-head, #app.m7-app .m7-pagebar { background:#090f16 !important; border-color:#263542 !important; }
  #app.m7-category .search-box input { background:#151f29 !important; border-color:#2b3947 !important; color:#edf3f4 !important; }
  #app.m7-category .search-box button { background:#197b72 !important; color:#fff !important; }
  #app.m7-category .m7-filter-row a, #app.m7-category .cat-list a { background:#17232d !important; border-color:#30414e !important; color:#c2d0d2 !important; }
  #app.m7-category .m7-filter-row a.is-active, #app.m7-category .cat-list a.is-active { background:#e3bd6a !important; border-color:#e3bd6a !important; color:#0b1117 !important; }
  #app.m7-app .footer, #app.m7-app .m7-bottom-nav, #app.m7-app .m7-video-footer { background:rgba(14,23,32,.97) !important; border-color:#2b3a48 !important; }
  #app.m7-app .footer li a, #app.m7-app .m7-bottom-nav a, #app.m7-app .m7-video-footer li a { color:#8ea4aa !important; }
  #app.m7-app .footer li.active a, #app.m7-app .m7-bottom-nav a.active, #app.m7-app .m7-video-footer li.active a { color:#63d7c5 !important; }
}
.m7-video-page, .m7-video-page .box, .m7-video-page .channelbox { background:#07090d !important; color:#eef2f5 !important; }
.m7-video-page .video-player-shell { background:#07090d !important; border-color:#263241 !important; }
.m7-video-page .video-meta-bar { background:#111821 !important; border-color:#263241 !important; color:#dce6ee !important; }
.m7-video-page .m7-video-actions { background:#111821 !important; border-color:#263241 !important; }
.m7-video-page .m7-video-actions button, .m7-video-page .m7-video-actions a { background:#18212c !important; border-color:#334254 !important; color:#67dfca !important; }
.m7-video-page .m7-video-actions button.is-active { background:rgba(245,184,75,.12) !important; border-color:#f5c45c !important; color:#f5c45c !important; }
.m7-video-page .m7-video-intro, .m7-video-page .m7-video-details { background:linear-gradient(145deg,#141b25,#0d131b) !important; border-color:#263241 !important; color:#eef2f5 !important; box-shadow:0 14px 32px rgba(0,0,0,.25) !important; }
.m7-video-page .m7-video-intro-title strong, .m7-video-page .m7-detail-heading strong, .m7-video-page .m7-detail-text h3 { color:#f3f6f8 !important; }
.m7-video-page .m7-video-intro p, .m7-video-page .m7-detail-text p, .m7-video-page .m7-detail-empty { color:#aeb9c4 !important; }
.m7-video-page .m7-detail-meta > div, .m7-video-page .m7-detail-stats > div { background:#18212c !important; }
.m7-video-page .m7-detail-meta strong, .m7-video-page .m7-detail-stats strong { color:#edf2f5 !important; }
.m7-video-page .m7-detail-meta span, .m7-video-page .m7-detail-stats span { color:#8d99a5 !important; }
.m7-video-page .m7-detail-heading-stat, .m7-video-page .m7-detail-text { border-color:#263241 !important; }
.m7-video-recommend { margin: 18px 12px 100px; }
.m7-video-recommend-heading { display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:0 2px 11px; border-bottom:1px solid #263241; }
.m7-video-recommend-heading strong { color:#f3f6f8; font-size:15px; letter-spacing:.01em; }
.m7-video-recommend-heading span { color:#7f8c98; font-size:11px; }
.m7-video-recommend-list { padding-top: 4px; }
.m7-video-page .list .list-item { border:1px solid rgba(255,255,255,.09) !important; background:#11151c !important; color:#edf2f5 !important; }
.m7-video-page .list .list-item .name { color:#edf2f5 !important; }
.m7-video-page .list .list-item .plays { color:#8d99a5 !important; }

/* Compact mobile catalog rows share the same structure on both list pages. */
#app.m7-home #list .video-grid, #app.m7-category .video-grid { grid-template-columns:minmax(0,1fr) !important; gap:0 !important; }
#app.m7-home .list .list-item, #app.m7-category .list-item { border:0 !important; border-bottom:1px solid #252a31 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; padding:14px 0 !important; }
#app.m7-home .list-item > div, #app.m7-category .list-item { display:grid !important; grid-template-columns:42% minmax(0,1fr); gap:12px; align-items:start; }
#app.m7-home .list .list-item .thumb, #app.m7-category .list-item .thumb { width:100% !important; height:auto !important; aspect-ratio:16 / 10; border-radius:6px !important; background:#1c2026 !important; }
#app.m7-home .list .list-item .thumb img, #app.m7-category .list-item .thumb img { width:100% !important; height:100% !important; object-fit:cover !important; }
#app.m7-home .m7-card-copy, #app.m7-category .m7-card-copy { min-width:0; display:flex; flex-direction:column; min-height:106px; }
#app.m7-home .list .list-item .name, #app.m7-category .list-item .name { height:auto !important; max-height:63px; min-height:42px; margin:0 !important; padding:0 !important; color:#f0f1f3 !important; font-size:14px !important; line-height:21px !important; font-weight:600; text-align:left; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; }
#app.m7-home .m7-card-tags, #app.m7-category .m7-card-tags { margin:5px 0 0; padding:0; color:#88929b; font-size:11px; line-height:16px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#app.m7-home .m7-card-meta, #app.m7-category .cat-card-meta { display:flex; align-items:center; gap:4px; margin:auto 0 0 !important; min-height:32px; padding:4px 0 0 !important; }
#app.m7-home .m7-card-meta > span, #app.m7-category .cat-card-meta > span { flex:1; min-width:0; display:block; overflow:hidden; text-overflow:ellipsis; font-size:11px !important; color:#a6adb5 !important; }
#app.m7-home .m7-card-meta .m7-favorite, #app.m7-category .cat-card-meta .m7-favorite { flex:none; margin-left:auto; width:32px; height:32px; border:0; background:transparent; color:#9aa2ac; }
.m7-video-page .m7-video-details { border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; }
.m7-video-page .m7-detail-meta { display:block; }
.m7-video-page .m7-detail-meta > div { display:grid; grid-template-columns:80px minmax(0,1fr); align-items:baseline; gap:12px; padding:9px 0; border-radius:0; border-bottom:1px solid #252a31; background:transparent !important; }
.m7-video-page .m7-detail-meta strong { margin:0; font-weight:500; }
@media(min-width:601px){
  #app.m7-home #list .video-grid, #app.m7-category .video-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; column-gap:24px !important; }
}

/* Payment dialogs use the same cinema palette as the mobile shell. */
#app.m7-app .WX-window-shade { background:rgba(2,5,9,.78) !important; backdrop-filter:blur(10px); }
#app.m7-app .WX-window-box { width:100% !important; max-width:430px; }
#app.m7-app .WX-window-box .WX-Window-main { width:min(100%,430px) !important; max-height:calc(100dvh - 32px); overflow:hidden; border:1px solid #263241 !important; border-radius:20px !important; background:#0e141c !important; box-shadow:0 24px 70px rgba(0,0,0,.55) !important; }
#app.m7-app .WX-window-box h2 { padding:18px 20px !important; border-bottom:1px solid #263241 !important; border-radius:0 !important; background:#111821 !important; color:#f2f5f7 !important; text-align:left; }
#app.m7-app .WX-window-box .WX-Window-body { padding:18px !important; overflow-y:auto; background:#0e141c !important; color:#c8d2dc !important; }
#app.m7-app .WX-window-box .WX-Window-footer { padding:12px 18px !important; border-top:1px solid #263241 !important; background:#0e141c !important; }
#app.m7-app .WX-window-box .WX-Window-btn.cannel { width:100% !important; height:44px !important; border:1px solid #334254 !important; border-radius:12px !important; background:#18212c !important; color:#b6c2ce !important; line-height:42px !important; }
#app.m7-app .WX-window-box .pay-item { margin:10px 0 !important; border:1px solid rgba(103,223,202,.18) !important; border-radius:13px !important; background:linear-gradient(135deg,#142b30,#17242c) !important; box-shadow:none !important; }
#app.m7-app .WX-window-box .pay-item a, #app.m7-app .WX-window-box .pay-item a[style] { display:flex; align-items:center; justify-content:center; gap:8px; min-height:48px; color:#67dfca !important; font-weight:800; text-decoration:none; }
#app.m7-app .WX-window-box .pay-item a img { width:24px; height:24px; object-fit:contain; }
#app.m7-app .WX-window-box .niubi { display:block; margin-bottom:12px; color:#f3f6f8; font-size:15px; font-weight:800; }
#app.m7-app .WX-window-box .WX-Window-body p { color:#f3a7a1 !important; line-height:1.7 !important; }

/* Refined mobile category hierarchy and source metadata. */
.m7-category-tree { padding: 4px 0 10px; }
.m7-category-tree .m7-tree-all,
.m7-category-tree .m7-tree-link,
.m7-category-tree summary { min-height: 44px; border-radius: 6px; transition: background .18s ease, color .18s ease; }
.m7-category-tree .m7-tree-all { margin: 0 0 12px; padding: 10px 12px; border: 1px solid #30353c; background: #181d23; color: #bdc5cc; font-weight: 700; }
.m7-category-tree .m7-tree-all span { flex: 1; }
.m7-category-tree .m7-tree-all.is-active { border-color: #35645c; background: #142a27; color: #7bdcca; }
.m7-category-tree .m7-tree-item { border-bottom: 0; }
.m7-category-tree > ul > .m7-tree-item { padding: 4px 0; border-bottom: 1px solid #24282e; }
.m7-category-tree > ul > .m7-tree-item:last-child { border-bottom: 0; }
.m7-category-tree summary { gap: 9px; padding: 7px 0; color: #e6e9ed; font-weight: 600; font-size: 13px; }
.m7-category-tree summary:hover, .m7-category-tree summary:focus-visible { background: rgba(255,255,255,.06); outline: 0; }
.m7-category-tree summary > .m7-tree-symbol { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 6px; background: #20252c; color: #91c4bc; font-size: 15px; }
.m7-category-tree summary > small { min-width: 33px; color: #7e8c97; font-size: 10px; white-space: nowrap; }
.m7-category-tree summary > .m7-tree-chevron { width: 18px; color: #7d8b96; font-size: 15px; text-align: center; }
.m7-category-tree details[open] > summary > .m7-tree-chevron { transform: rotate(180deg); }
.m7-category-tree details[open] > summary > .m7-tree-symbol { background: #1b3430; color: #7bdcca; }
.m7-category-tree details > .m7-tree-parent-link { margin: 0; padding: 6px 2px 9px 41px; min-height: 32px; color: #86beb4; font-size: 11px; }
.m7-category-tree details > ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; margin: 0 0 10px; padding: 0; border: 0; }
.m7-category-tree details > ul > .m7-tree-group { grid-column: 1 / -1; margin: 3px 0; padding-left: 10px; border-left: 1px solid #344440; }
.m7-category-tree .m7-tree-link { height: 100%; margin: 0; padding: 9px 10px; border: 1px solid #2a3037; background: #181d23; color: #abb8c3; font-size: 12px; line-height: 17px; }
.m7-category-tree .m7-tree-parent-link { border: 0; background: transparent; }
.m7-category-tree .m7-tree-link.is-active { border-color: #397469; background: #183630; color: #89e0ce; }
.m7-category-tree .m7-tree-link.is-active i { color: #89e0ce; }
.m7-category-tree a:focus-visible { outline: 2px solid #70ccbb; outline-offset: 2px; }
.m7-category-tree .m7-tree-parent-link.is-active { box-shadow: none; }
.m7-category-drawer { display: flex; flex-direction: column; width: min(92vw,380px); padding: 0 18px calc(20px + env(safe-area-inset-bottom)); background: #101419; }
.m7-category-drawer-head { flex: none; margin: 0; padding: 24px 0 18px; }
.m7-category-drawer-head small { display: block; margin-bottom: 5px; color: #7e8b95; font-size: 11px; }
.m7-category-drawer-head strong { display: block; font-size: 19px; }
.m7-category-drawer > .m7-category-tree { overflow-y: auto; min-height: 0; padding-right: 3px; scrollbar-width: thin; scrollbar-color: #38433f transparent; }
.m7-category-picker { padding: 0; }
.m7-category-picker > summary { min-height: 48px; padding: 10px 12px; border: 1px solid #2b333a; border-radius: 6px; background: #141a20; }
.m7-category-picker > summary strong { font-size: 13px; }
.m7-category-picker > summary span { color: #82d6c5; font-size: 12px; }
.m7-category-picker > summary .m7-picker-icon { color: #82d6c5; font-size: 16px; }
.m7-category-picker[open] > summary .m7-picker-icon { transform: none; }
.m7-category-picker > summary .m7-picker-chevron { font-size: 16px; }
#app.m7-category .section.m7-category-filter { padding: 0 14px; border: 0; }
#app.m7-category .m7-category-picker .m7-category-tree { max-height: min(440px,55dvh); margin-top: 10px; padding: 3px 4px 8px 0; scrollbar-width: thin; scrollbar-color: #38433f transparent; }
.m7-category-trail { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; padding-top: 12px; color: #87949e; font-size: 11px; line-height: 18px; }
.m7-category-trail a[aria-current] { color: #9ee1d3; }
.m7-category .m7-category-results { margin: 20px 0 0; padding: 0 0 12px; border-color: #272d34; }
.m7-category .m7-category-results h2 { font-size: 16px; }
.m7-category .m7-category-results span { font-size: 11px; }
.m7-video-page .m7-detail-tags-block { margin-top: 14px; padding-top: 14px; border-top: 1px solid #263241; }
.m7-detail-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.m7-detail-tag-link { display:inline-flex; align-items:center; min-height:32px; padding:0 10px; border:1px solid rgba(103,223,202,.2); border-radius:5px; background:rgba(103,223,202,.08); color:#86d9cd; font-size:11px; overflow-wrap:anywhere; max-width:100%; text-decoration:none; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.m7-detail-tag-link:active, .m7-detail-tag-link:hover { border-color:rgba(103,223,202,.55); background:rgba(103,223,202,.16); color:#b7f3e8; }
.m7-video-page .m7-detail-text { margin-top: 18px; padding-top: 16px; }
.m7-video-page .m7-detail-text h3 { margin: 0 0 8px; font-size: 14px; }
.m7-video-page .m7-detail-text p { margin: 0; font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; }
.m7-detail-tags-empty { margin-top: 9px !important; color: #7f8c98 !important; }
.m7-video-page .m7-detail-tags-block { margin-top:0; padding-top:0; border-top:0; margin-bottom:18px; }

/* Consumer layout pass: keep the first screen focused on finding a video. */
@media (max-width:600px) {
  .m7-home .home-hero {
    height:232px !important;
    min-height:232px !important;
    max-height:232px !important;
    margin-bottom:16px;
  }
  .m7-home .home-hero__content { padding:20px 18px 16px; }
  .m7-home .home-hero__eyebrow { margin-bottom:7px; font-size:11px; }
  .m7-home .home-hero h1 { font-size:21px; line-height:1.28; -webkit-line-clamp:3; }
  .m7-home .home-hero p { margin-top:6px; font-size:12px; }
  .m7-home .home-hero .quick-actions { gap:7px; }
  .m7-home .home-hero .quick-actions button,
  .m7-home .home-hero .quick-actions a { min-width:0; height:37px; padding:0 12px; font-size:12px; }
  .m7-home .section-head { margin-top:12px; margin-bottom:6px; }
  .m7-home .section-head h2 { font-size:16px; }
  .m7-home .list .list-item { padding:12px 0 !important; }
  .m7-home .list-item > div, #app.m7-category .list-item { grid-template-columns:40% minmax(0,1fr); gap:11px; }
  .m7-home .m7-card-copy, #app.m7-category .m7-card-copy { min-height:96px; }
  .m7-home .list .list-item .name, #app.m7-category .list-item .name { font-size:13px !important; line-height:19px !important; max-height:57px; }
  .m7-home .m7-card-meta > span, #app.m7-category .cat-card-meta > span { font-size:10px !important; }
  .m7-home .m7-card-meta .m7-favorite, #app.m7-category .cat-card-meta .m7-favorite { width:36px; height:36px; }
  #app.m7-category .m7-category-picker .m7-category-tree { max-height:min(330px,45dvh); }
  .m7-mine .m7-mine-main { margin-bottom:94px; }
  .m7-mine .m7-account-card { padding:14px; }
  .m7-mine .m7-account-avatar { width:50px; height:50px; }
  .m7-mine .m7-library-section { margin-top:12px; padding:12px; }
  .m7-mine .m7-tabs { gap:5px; margin-bottom:12px; overflow-x:auto; scrollbar-width:none; }
  .m7-mine .m7-tabs::-webkit-scrollbar { display:none; }
  .m7-mine .m7-tabs button { flex:1 0 auto; padding:8px 11px; font-size:12px; }
  .m7-mine .m7-plans-section { margin-top:12px; padding:13px 12px 10px; }
  .m7-mine .m7-plans-heading { margin-bottom:9px; }
  .m7-mine .m7-plans-heading p { margin:3px 0 0; }
  .m7-mine .m7-plans-list { gap:9px !important; padding-bottom:7px; }
  .m7-mine .m7-plans-list > a { flex-basis:min(78vw,286px); min-height:158px; padding:13px !important; }
  .m7-mine .m7-plan-card ul { margin-top:9px; padding-top:9px; gap:4px; }
  .m7-mine .m7-plan-card li { font-size:10px; }
  .m7-mine .m7-plan-action { display:flex; align-items:center; justify-content:flex-end; gap:4px; margin-top:8px; color:#67dfca; font-size:11px; font-weight:800; }
}

.m7-hero-counter { margin-right:2px; color:#dce7e8; font-size:10px; font-weight:800; }
.m7-video-page .video-meta-bar { display:block; height:auto; padding:15px 16px; background:transparent !important; }
.m7-video-page .video-meta-bar h1 { width:100%; margin:0 0 9px; color:#edf2f6; font-size:18px; font-weight:600; line-height:27px; white-space:normal; overflow-wrap:anywhere; }
.m7-video-page .video-meta-bar > span:last-child { flex:none; }
.m7-video-summary { display:flex; flex-wrap:wrap; align-items:center; gap:14px; color:#97a5b0; font-size:12px; line-height:18px; }
.m7-video-page .video-meta-bar .m7-video-summary span { float:none; padding:0; background:transparent; color:#97a5b0; font-size:12px; }
.m7-video-page .video-meta-bar .m7-video-summary span:first-child { color:#67dfca; }
.m7-video-page .m7-detail-more { margin-top:16px; border-top:1px solid #263241; }
.m7-video-page .m7-detail-more > summary { display:flex; align-items:center; justify-content:space-between; padding:14px 0 0; color:#aeb9c4; font-size:13px; cursor:pointer; list-style:none; }
.m7-video-page .m7-detail-more > summary::-webkit-details-marker { display:none; }
.m7-video-page .m7-detail-more[open] > summary i { transform:rotate(180deg); }

.m7-home .m7-hero-dots { right:14px; bottom:17px; align-items:center; gap:0; }
.m7-home .m7-hero-dots button,
.m7-home .m7-hero-dots button.active { display:grid; place-items:center; width:28px; height:32px; background:transparent; border-radius:0; }
.m7-home .m7-hero-dots button::before { content:""; width:6px; height:6px; border-radius:50%; background:rgba(255,255,255,.5); }
.m7-home .m7-hero-dots button.active::before { background:#67dfca; box-shadow:0 0 0 3px rgba(103,223,202,.16); }

/* Use one navigation geometry, including pages whose footer is outside #app. */
#app.m7-app .footer, #app.m7-app .m7-bottom-nav,
.m7-category + .footer, .footer.m7-video-footer {
  position:fixed; display:flex !important; left:0 !important; right:0 !important; bottom:calc(10px + env(safe-area-inset-bottom));
  width:min(calc(100% - 24px),520px) !important; height:60px; margin:0 auto; padding:0 !important;
  transform:none; border:1px solid #2a333e !important; border-radius:8px !important;
  background:rgba(18,23,30,.98) !important; box-shadow:0 8px 26px rgba(0,0,0,.24) !important; z-index:60;
}
#app.m7-app .footer ul, .m7-category + .footer ul, .footer.m7-video-footer ul { display:flex; width:100%; height:100%; margin:0; padding:0; list-style:none; }
#app.m7-app .footer li, .m7-category + .footer li, .footer.m7-video-footer li { flex:1; width:auto; height:100%; margin:0; padding:0; }
#app.m7-app .footer li a, #app.m7-app .m7-bottom-nav a,
.m7-category + .footer li a, .footer.m7-video-footer li a { display:flex; flex:1; flex-direction:column; align-items:center; justify-content:center; gap:5px; height:100%; font-size:11px; color:#97a5b0 !important; }
#app.m7-app .footer li.active a, #app.m7-app .m7-bottom-nav a.active,
.m7-category + .footer li.active a { color:#67dfca !important; }
#app.m7-app .footer li i, #app.m7-app .m7-bottom-nav i,
.m7-category + .footer li i, .footer.m7-video-footer li i { display:block; margin:0; color:inherit; font-size:19px; line-height:20px; }
#app.m7-app .footer span, #app.m7-app .m7-bottom-nav span,
.m7-category + .footer span, .footer.m7-video-footer span { display:block; margin:0; color:inherit !important; font-size:11px; line-height:15px; }

#app.m7-mine .m7-account-card { padding:16px 0; border-radius:0; border-bottom:1px solid #2a333e; background:transparent; box-shadow:none; }
#app.m7-mine .m7-account-avatar { flex:none; border:1px solid #34424c; background:#19242c; color:#67dfca; }
#app.m7-mine .m7-account-copy strong { font-size:18px; }
#app.m7-mine .m7-account-copy span { color:#97a5b0; font-size:12px; line-height:19px; }
#app.m7-mine .m7-account-cta { flex:none; border-radius:6px; background:#197b72; color:#fff; }
#app.m7-mine .m7-account-cta.secondary { background:#19242c; color:#aebcc5; }
#app.m7-mine .m7-library-section,
#app.m7-mine .m7-plans-section:not(.is-member) { padding:16px 0; border:0; border-radius:0; background:transparent !important; box-shadow:none; }
#app.m7-mine .m7-library-section { margin-top:0; border-bottom:1px solid #2a333e; }
#app.m7-mine .m7-tabs { border-color:#2a333e; }
#app.m7-mine .m7-tabs button { min-height:40px; border-radius:6px; background:#18212a; color:#97a5b0; }
#app.m7-mine .m7-tabs button.active { background:#183731; color:#7ae2ce; }
#app.m7-mine .m7-empty-state { padding:26px 10px; gap:7px; }
#app.m7-mine .m7-empty-state strong { color:#edf2f6; }
#app.m7-mine .m7-empty-state i { font-size:24px; color:#67dfca; }
#app.m7-mine .m7-empty-state a { margin-top:7px; border-radius:6px; background:#197b72; color:#fff; }
#app.m7-mine .m7-plans-heading { gap:12px; }
#app.m7-mine .m7-plans-heading > i { color:#e1bd73; font-size:18px; }
#app.m7-mine .m7-plans-list > a { display:flex !important; flex-direction:column; align-items:stretch; gap:0; min-height:185px; border-radius:8px !important; }
#app.m7-mine .m7-plan-top { min-height:43px; padding-top:10px; }
#app.m7-mine .m7-plan-top strong { font-size:15px; }
#app.m7-mine .m7-plan-top span { font-size:11px; line-height:16px; }
#app.m7-mine .m7-plan-price { margin-top:8px; }
#app.m7-mine .m7-plan-price em { font-size:23px; color:#e1bd73; }
#app.m7-mine .m7-plan-action { margin-top:auto; padding-top:10px; }
#app.m7-mine .m7-library-card strong { display:-webkit-box; white-space:normal; -webkit-line-clamp:3; -webkit-box-orient:vertical; font-size:13px; line-height:19px; height:57px; }
#app.m7-mine .m7-library-card { border-radius:6px; }
#app.m7-mine .m7-message-entry { min-height:62px; margin-top:14px; border-radius:6px; background:#151a21; }
.m7-video-page .m7-video-actions { padding:10px 16px; background:transparent !important; }
.m7-video-page .m7-video-details { padding:16px 4px; }
.m7-video-page .m7-detail-more .m7-detail-heading { margin-top:14px; }
.m7-video-page .m7-video-recommend-list .van-clearfix { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.m7-video-page .m7-video-recommend-list .list-item { width:100% !important; margin:0 !important; padding:0; border-radius:6px !important; transform:none; }
.m7-video-page .m7-video-recommend-list .name { height:57px !important; font-size:13px !important; line-height:19px !important; -webkit-line-clamp:3; }
/* Keep legacy play overlays inside the thumbnail's stacking context. */
.m7-video-page .m7-video-recommend-list .thumb { position:relative; isolation:isolate; }
.m7-video-page .m7-video-recommend-list .thumb::before { z-index:1; }
.m7-video-page .m7-video-recommend-list .thumb::after { z-index:2; }
#app.m7-app, #app.m7-app *, .footer.m7-video-footer *, .m7-category + .footer * { letter-spacing:0; }
@media (hover:none) {
  #app.m7-app .list-item:hover { transform:none; }
}
