:root{--bg:#2c2a2a;--bg2:#191919;--text:#f0f0f0;--muted:#a9a4a4;--accent:#1abc9c;--line:#403e3e;--wrap:710px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
img{max-width:100%;display:block;border-radius:4px}
.container{max-width:var(--wrap);margin:0 auto;padding:0 15px}
.display-none{display:none}

/* header */
#header{position:sticky;top:0;left:0;right:0;z-index:90;background:rgba(25,25,25,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navbar{max-width:var(--wrap);margin:0 auto;min-height:56px;display:flex;align-items:center;gap:12px;padding:0 15px}
.btn-menu{display:none;background:none;border:1px solid var(--line);color:var(--text);border-radius:6px;padding:6px 10px;font-size:13px}
.logo-box{flex:1;display:flex;align-items:center;gap:8px;color:var(--text);font-weight:700;font-size:17px;letter-spacing:.5px}
.logo-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(26,188,156,.15)}
.topbar-actions{display:flex;gap:8px}
.topbar-btn{background:none;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 13px;font-size:13px;cursor:pointer}
.topbar-btn:hover{color:var(--text);border-color:var(--accent)}
.nav-panel{max-width:var(--wrap);margin:0 auto;padding:0 15px 12px;display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line)}
.nav-panel a{color:var(--muted);font-size:13.5px;padding:5px 10px;border-radius:999px}
.nav-panel a:hover{color:var(--text);background:rgba(255,255,255,.06)}
@media(min-width:721px){.nav-panel{display:flex!important}}

/* breadcrumb */
.breadcrumb{max-width:var(--wrap);margin:18px auto 0;padding:0 15px;color:var(--muted);font-size:13px;display:flex;gap:8px;flex-wrap:wrap}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--accent)}

/* index cards */
#index,#archive{padding:5.375rem 0 3.5rem;margin:-3.125rem 0}
#index article,#archive article{padding:0;margin:0 auto 3.5rem;max-width:var(--wrap)}
#index article a,#archive article a{color:var(--accent);text-decoration:none;display:block}
.post-card{position:relative;border-radius:5px;overflow:hidden;background:#3a3838 no-repeat center;background-size:cover;box-shadow:0 2px 10px rgba(0,0,0,.25);transition:transform .3s ease,box-shadow .3s ease}
.post-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.4)}
.post-card-mask{background:rgba(0,0,0,.25);position:relative;z-index:10;display:table;vertical-align:middle;width:100%;height:15.5rem}
.post-card-container{display:table-cell;vertical-align:middle;text-align:center;padding:0 18px}
.post-card-title{font-size:1.5625rem;font-weight:400;color:#fff;margin:0 0 .75rem;line-height:1.45;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.post-card-info{color:#eee;font-size:.875rem;text-align:center;font-weight:400}
.post-card-info a,.post-card-info span{color:#eee}
.wraps{display:inline-block;margin-left:8px;background:#e0245e;color:#fff;font-size:11px;line-height:1;padding:4px 8px;border-radius:999px;vertical-align:middle}

/* pagination */
.pagination{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 0 40px}
.pagination a,.pagination span{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border-radius:8px;border:1px solid var(--line);color:var(--muted);font-size:13px}
.pagination .current,.pagination a:hover{color:#08110f;background:var(--accent);border-color:var(--accent)}
.pagination .disabled{opacity:.35;pointer-events:none}

/* post detail */
#post{padding:2.5rem 0 2rem}
.post{max-width:var(--wrap);margin:0 auto;padding:0 15px}
.post-title{margin:0 0 .9375rem;font-weight:300;font-size:2.5rem;line-height:1.35;color:var(--text)}
.post-meta{list-style:none;padding:0;margin:0 0 1.5rem;color:var(--muted);font-size:.875rem;display:flex;flex-wrap:wrap;gap:6px}
.post-meta a{color:var(--muted);border-bottom:1px dashed var(--line)}
.post-meta a:hover{color:var(--accent);border-bottom-color:transparent}
.post-content{font-size:1.0625rem;line-height:2;color:#e6e2e2}
.post-content p{margin:0 0 1rem}
.post-content img{border-radius:6px;margin:1rem 0}
.post-content h2,.post-content h3{color:var(--text);margin:1.6rem 0 .8rem}
@media(max-width:720px){.post-title{font-size:2rem}}

/* video */
.video-wrap{position:relative;margin:0 0 1.5rem;background:#000;border-radius:6px;overflow:hidden;aspect-ratio:16/9}
.video-wrap video,.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-cover{position:relative;display:block;aspect-ratio:16/9;background:#000 center/cover no-repeat;border-radius:6px;overflow:hidden;margin-bottom:1.5rem}
.video-cover::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
.video-cover .play-btn{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:50%;background:rgba(26,188,156,.9);display:flex;align-items:center;justify-content:center}
.video-cover .play-btn svg{width:26px;height:26px;fill:#08110f;margin-left:3px}

/* episodes */
.ep-box{margin:1.5rem 0}
.ep-title{font-size:.95rem;color:var(--muted);margin:0 0 .7rem}
.eps{display:flex;flex-wrap:wrap;gap:8px}
.ep{padding:7px 13px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px}
.ep:hover,.ep.active{background:var(--accent);border-color:var(--accent);color:#08110f}

/* near */
.post-near{display:flex;flex-direction:column;gap:10px;margin:2.5rem 0 1rem}
.post-near a{display:block;padding:12px 18px;border:1px solid #555;background:rgba(255,255,255,.04);border-radius:16px;color:var(--accent);font-size:1.0625rem;font-weight:500}
.post-near a:hover{border-color:var(--accent)}

/* empty / jump */
.empty-box{max-width:var(--wrap);margin:80px auto;padding:40px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px}
.empty-box p{color:var(--text);font-size:16px;margin:0 0 6px}

/* footer */
#footer{margin-top:50px;padding:28px 0 40px;border-top:1px solid var(--line);background:var(--bg2);color:var(--muted);font-size:13px;text-align:center}
#footer a{color:var(--muted);margin:0 6px}
#footer a:hover{color:var(--accent)}
.footer-copy{margin:12px 0 0;color:#6f6a6a;font-size:12px}

/* search */
.search-page{max-width:var(--wrap);margin:0 auto;padding:80px 15px 40px}
.search-form{display:flex;gap:10px;margin-bottom:16px}
.search-form input{flex:1;background:#1f1e1e;border:1px solid var(--line);border-radius:8px;padding:12px 14px;color:var(--text);font-size:15px;outline:none}
.search-form button{background:var(--accent);color:#08110f;border:0;border-radius:8px;padding:0 22px;font-weight:700;cursor:pointer}
.list{list-style:none;margin:0;padding:0}
.list li{border-bottom:1px solid var(--line)}
.list a{display:flex;justify-content:space-between;gap:12px;padding:12px 4px;color:var(--text);font-size:14px}
.list a:hover{color:var(--accent)}
.list time{color:var(--muted);font-size:12px;flex:0 0 auto}
/* mobile: 鍒嗙被妯粦甯告樉 */
@media(max-width:720px){
  .nav-panel{display:flex!important;flex-wrap:nowrap;overflow-x:auto;gap:4px;padding:4px 15px 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .nav-panel::-webkit-scrollbar{display:none}
  .nav-panel a{flex:0 0 auto;font-size:13px;padding:4px 10px;background:rgba(255,255,255,.06);white-space:nowrap}
  #index article,#archive article{margin-bottom:2.2rem}
  .post-card-mask{height:auto;min-height:13rem}
  .post-card-title{font-size:1.05rem}
}

/* nav drawer */
.nav-drawer{position:fixed;left:0;right:0;top:var(--header-h,56px);z-index:95;background:rgba(20,20,20,.98);border-bottom:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.5);max-height:calc(100vh - var(--header-h,56px));overflow:auto}
.nav-drawer[hidden]{display:none}
.nav-drawer-inner{max-width:710px;margin:0 auto;padding:16px 15px 22px}
.nav-drawer-title{margin:0 0 10px;color:var(--muted);font-size:12.5px;letter-spacing:.5px}
.nav-drawer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}
.nav-drawer-grid a{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:8px;padding:9px 6px;text-align:center;color:var(--text);font-size:13px}
.nav-drawer-grid a:hover{border-color:var(--accent);color:var(--accent)}
.nav-drawer-links{display:flex;flex-wrap:wrap;gap:8px}
.nav-drawer-links a{color:var(--muted);font-size:13px;padding:6px 12px;border:1px solid var(--line);border-radius:999px}
.nav-drawer-links a:hover{color:var(--accent);border-color:var(--accent)}

/* episode nav */
.ep-nav{display:flex;gap:10px;margin:18px 0 6px}
.ep-nav-btn{flex:1;text-align:center;padding:11px 10px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.04);color:var(--text);font-size:14px}
.ep-nav-btn:hover{border-color:var(--accent);color:var(--accent)}
.ep-nav-btn.disabled{opacity:.35;pointer-events:none}
/* hot words */
.hot-words{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 6px;color:var(--muted);font-size:13px}
.hot-words a{padding:5px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}
.hot-words a:hover{color:var(--accent);border-color:var(--accent)}

/* inline player on detail */
.video-wrap .MacPlayer{position:absolute;inset:0;width:100%;height:100%}
.video-wrap .MacPlayer iframe{width:100%;height:100%;border:0}
.eps .ep.active{background:var(--accent);color:#111;border-color:var(--accent)}

/* 清理播放器隐藏广告框 */
#install,#buffer,#player_if{display:none!important;width:0!important;height:0!important}

/* 播放器封面层 */
.video-wrap{position:relative;background:#000}
.player-poster{position:absolute;inset:0;z-index:6;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .25s}
.player-poster::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.28)}
.player-poster.hide{opacity:0;pointer-events:none}
.player-play{position:relative;z-index:2;width:72px;height:72px;border-radius:50%;border:0;background:rgba(26,188,156,.95);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 26px rgba(0,0,0,.45)}
.player-play:hover{transform:scale(1.06)}
.player-err{position:absolute;inset:0;z-index:7;display:flex;align-items:center;justify-content:center;color:#ddd;font-size:14px;background:rgba(0,0,0,.75)}

/* 播放加载提示 */
.player-loading{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(0,0,0,.55);color:#eee;font-size:13px}
.player-loading em{font-style:normal;opacity:.85}
.player-loading .spinner{width:26px;height:26px;border:3px solid rgba(255,255,255,.25);border-top-color:var(--accent);border-radius:50%;animation:m981spin .8s linear infinite}
@keyframes m981spin{to{transform:rotate(360deg)}}
.player-play.loading{opacity:.5}
.rel-box{margin:22px 0 6px}
.rel-title{font-size:15px;color:#a9a9a9;margin:0 0 10px}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rel-item{display:block;text-decoration:none}
.rel-pic{display:block;padding-top:56%;border-radius:8px;background-size:cover;background-position:center;background-color:#222}
.rel-name{display:block;margin-top:6px;font-size:12.5px;color:var(--text);line-height:1.45;max-height:2.9em;overflow:hidden}
@media(max-width:720px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
/* m981-mobile-v2 移动端与整体优化 */
@media(max-width:720px){
  body{font-size:15.5px;line-height:1.85}
  .container,#post,#index,#archive,.navbar{max-width:100%}
  .post-title{font-size:1.6rem;line-height:1.35}
  .post-card-mask{height:auto;min-height:11.5rem;padding:1.1rem .9rem}
  .post-card-title{font-size:1.02rem;line-height:1.5}
  .post-card-info{font-size:12px;opacity:.85}
  #index article,#archive article{margin-bottom:1.6rem}
  .post-meta{font-size:12.5px}
  .pagination a,.pagination span{padding:9px 12px;font-size:13px}
  .eps .ep{padding:9px 13px;font-size:13px}
  .rel-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .topbar-btn{padding:8px 14px;font-size:13px}
  .nav-drawer-grid{grid-template-columns:repeat(2,1fr)}
  .player-play{width:62px;height:62px}
  .video-wrap{border-radius:0;margin:0 -15px}
}
/* 交互与观感 */
.post-card{transition:transform .25s ease,box-shadow .25s ease}
.post-card:hover{transform:translateY(-2px)}
a{transition:color .18s ease}
.pagination a{min-width:38px;text-align:center;border-radius:8px}
.pagination a.current{background:var(--accent);color:#111;border-color:var(--accent)}
.post-near a{display:inline-block;margin:6px 8px 6px 0;padding:9px 16px;border:1px solid var(--line);border-radius:999px;font-size:13.5px}
.post-near a:hover{border-color:var(--accent);color:var(--accent)}
::selection{background:var(--accent);color:#111}
img{max-width:100%;height:auto}
