/* ============================================================
   Kuro 墨黑影院 · MCCMS PC 主题
   bg #0B0C10 / panel #14161C / line #23262F / text #E8EAF0
   sub #9AA3B2 / amber #F0A93B / amber-deep #C8842A / danger #E5484D
   ============================================================ */
:root{
  --k-bg:#0B0C10; --k-panel:#14161C; --k-panel-2:#1A1D25; --k-line:#23262F;
  --k-text:#E8EAF0; --k-sub:#9AA3B2; --k-dim:#6B7280;
  --k-amber:#F0A93B; --k-amber-2:#C8842A; --k-danger:#E5484D; --k-ok:#3FB27F;
  --k-r:6px; --k-w:1240px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.k-body{background:var(--k-bg);color:var(--k-text);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;min-height:100vh}
.k-body a{color:inherit;text-decoration:none;transition:color .18s}
.k-body img{display:block;max-width:100%}
.k-body ::selection{background:rgba(240,169,59,.35)}
.k-body ::-webkit-scrollbar{width:10px;height:8px}
.k-body ::-webkit-scrollbar-thumb{background:#2A2E38;border-radius:5px}
.k-body ::-webkit-scrollbar-track{background:transparent}

/* ---------- 顶部导航 ---------- */
.k-nav{position:sticky;top:0;z-index:100;background:rgba(11,12,16,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--k-line)}
.k-nav__inner{max-width:var(--k-w);margin:0 auto;height:64px;display:flex;align-items:center;gap:26px;padding:0 20px}
.k-nav__logo{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;letter-spacing:.5px}
.k-nav__logo-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));color:#141414;border-radius:6px;font-weight:800;font-size:16px}
.k-nav__menu{display:flex;gap:4px;flex:1;min-width:0;overflow:hidden}
.k-nav__menu a{padding:8px 13px;border-radius:var(--k-r);color:var(--k-sub);font-size:14px;white-space:nowrap}
.k-nav__menu a:hover{color:var(--k-text);background:var(--k-panel-2)}
.k-nav__menu a.is-on{color:var(--k-amber);font-weight:600}
.k-nav__side{display:flex;align-items:center;gap:14px}
.k-nav__search{display:flex;align-items:center;background:var(--k-panel-2);border:1px solid var(--k-line);border-radius:20px;height:36px;padding:0 6px 0 14px;width:220px;transition:border-color .2s,width .25s}
.k-nav__search:focus-within{border-color:var(--k-amber);width:280px}
.k-nav__search input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--k-text);font-size:13px}
.k-nav__search input::placeholder{color:var(--k-dim)}
.k-nav__search button{border:0;background:none;color:var(--k-sub);cursor:pointer;display:flex;padding:6px}
.k-nav__search button:hover{color:var(--k-amber)}
.k-nav__user{display:flex;align-items:center;gap:10px}
.k-nav__login{color:var(--k-sub)}
.k-nav__login:hover{color:var(--k-text)}
.k-nav__reg{padding:7px 16px;background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));color:#151310;border-radius:18px;font-weight:600}
.k-nav__reg:hover{filter:brightness(1.08)}
.k-nav__me{display:flex;align-items:center;gap:8px;cursor:pointer;position:relative;padding:4px 6px;border-radius:var(--k-r)}
.k-nav__me:hover{background:var(--k-panel-2)}
.k-nav__me img{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--k-line)}
.k-nav__me-name{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--k-sub);font-size:13px}
.k-nav__pop{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:var(--k-panel);border:1px solid var(--k-line);border-radius:10px;padding:12px;display:none;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.k-nav__me:hover .k-nav__pop{display:block}
.k-nav__pop-funds{display:flex;gap:8px;margin-bottom:10px}
.k-nav__pop-funds span{flex:1;background:var(--k-panel-2);border-radius:8px;padding:8px;text-align:center;font-size:12px;color:var(--k-sub)}
.k-nav__pop-funds b{display:block;color:var(--k-amber);font-size:15px}
.k-nav__pop a{display:block;padding:8px 10px;border-radius:6px;color:var(--k-sub);font-size:13px}
.k-nav__pop a:hover{background:var(--k-panel-2);color:var(--k-text)}

/* ---------- Hero ---------- */
.k-hero{position:relative;height:66vh;min-height:430px;max-height:660px;overflow:hidden;background:#000}
.k-hero__slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}
.k-hero__slide.is-on{opacity:1;pointer-events:auto}
.k-hero__bg{position:absolute;inset:-20px;background-size:cover;background-position:center 25%;filter:saturate(1.05);animation:kHeroZoom 14s ease-out infinite alternate}
@keyframes kHeroZoom{from{transform:scale(1)}to{transform:scale(1.06)}}
.k-hero__mask{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,12,16,.25) 0%,rgba(11,12,16,.1) 40%,rgba(11,12,16,.92) 88%,var(--k-bg) 100%),linear-gradient(90deg,rgba(11,12,16,.85) 0%,rgba(11,12,16,.25) 45%,transparent 70%)}
.k-hero__box{position:absolute;left:max(20px,calc((100% - var(--k-w)) / 2 + 20px));bottom:64px;max-width:560px}
.k-hero__tag{color:var(--k-amber);font-size:13px;letter-spacing:2px;margin-bottom:10px;font-weight:600}
.k-hero__title{font-size:42px;line-height:1.15;font-weight:800;margin-bottom:14px;text-shadow:0 2px 18px rgba(0,0,0,.6)}
.k-hero__title a:hover{color:var(--k-amber)}
.k-hero__meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.k-hero__hits{color:var(--k-sub);font-size:13px}
.k-hero__desc{color:var(--k-sub);max-width:480px;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.k-hero__btns{display:flex;gap:12px}
.k-hero__thumbs{position:absolute;right:max(20px,calc((100% - var(--k-w)) / 2 + 20px));bottom:64px;display:flex;gap:10px;z-index:5}
.k-hero__thumb{position:relative;width:72px;height:96px;border-radius:6px;overflow:hidden;border:2px solid transparent;opacity:.55;transition:all .25s}
.k-hero__thumb img{width:100%;height:100%;object-fit:cover}
.k-hero__thumb.is-on{opacity:1;border-color:var(--k-amber);transform:translateY(-4px)}
.k-hero__thumb-bar{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--k-amber)}
.k-hero__thumb.is-on .k-hero__thumb-bar{width:100%;transition:width 6s linear}

/* ---------- 按钮 / chips ---------- */
.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 26px;border-radius:21px;font-size:15px;font-weight:600;cursor:pointer;border:0;transition:all .2s}
.k-btn--amber{background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));color:#181410}
.k-btn--amber:hover{filter:brightness(1.1);transform:translateY(-1px)}
.k-btn--ghost{background:rgba(255,255,255,.08);color:var(--k-text);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(4px)}
.k-btn--ghost:hover{background:rgba(255,255,255,.15)}
.k-btn--line{background:transparent;color:var(--k-amber);border:1px solid var(--k-amber-2)}
.k-btn--line:hover{background:rgba(240,169,59,.12)}
.k-btn--sm{height:32px;padding:0 16px;font-size:13px;border-radius:16px}
.k-btn--block{width:100%}
.k-btn[disabled]{opacity:.5;cursor:not-allowed}
.k-chip{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:15px;background:var(--k-panel-2);color:var(--k-sub);font-size:13px;border:1px solid transparent;white-space:nowrap}
.k-chip:hover{color:var(--k-text);border-color:var(--k-line)}
.k-chip--solid{background:var(--k-amber);color:#181410;font-weight:600}
.k-chip--solid:hover{color:#181410;filter:brightness(1.08)}
.k-chip--line{background:transparent;border:1px solid var(--k-line);height:26px;font-size:12px}
.k-chip--dim{background:transparent;border:1px dashed var(--k-line)}
.k-chip.is-on{background:var(--k-amber);color:#181410;font-weight:600;border-color:transparent}

/* ---------- 版心 / 区块 ---------- */
.k-main{max-width:var(--k-w);margin:0 auto;padding:10px 20px 60px}
.k-genres{display:flex;gap:10px;align-items:center;padding:22px 0 8px;flex-wrap:wrap}
.k-genres__gap{flex:1}
.k-sec{margin-top:38px}
.k-sec__head{display:flex;align-items:baseline;gap:14px;margin-bottom:18px}
.k-sec__title{font-size:22px;font-weight:700;letter-spacing:.5px;position:relative;padding-left:14px}
.k-sec__title::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:4px;border-radius:2px;background:linear-gradient(180deg,var(--k-amber),var(--k-amber-2))}
.k-sec__sub{color:var(--k-dim);font-size:13px}
.k-sec__more{margin-left:auto;color:var(--k-sub);font-size:13px}
.k-sec__more:hover{color:var(--k-amber)}
.k-sec__tools{margin-left:auto;display:flex;align-items:center;gap:8px}
.k-sec__tools .k-sec__more{margin-left:8px}

/* ---------- 胶片轨道 / 卡片 ---------- */
.k-rail{display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;padding-bottom:8px;scrollbar-width:none}
.k-rail::-webkit-scrollbar{display:none}
.k-rail .k-card{flex:0 0 172px}
.k-rail__btn{width:30px;height:30px;border-radius:50%;border:1px solid var(--k-line);background:var(--k-panel);color:var(--k-sub);font-size:16px;cursor:pointer;line-height:1}
.k-rail__btn:hover{color:var(--k-amber);border-color:var(--k-amber-2)}
.k-card{min-width:0}
.k-card__cover{position:relative;display:block;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:var(--k-panel-2)}
.k-card__cover img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.k-card:hover .k-card__cover img{transform:scale(1.06)}
.k-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.72) 100%)}
.k-card__badge{position:absolute;left:0;bottom:0;right:0;padding:6px 9px;font-size:12px;color:#fff;z-index:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-card__badge--end{color:var(--k-amber)}
.k-card__vip{position:absolute;top:8px;right:8px;z-index:2;background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));color:#181410;font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px}
.k-card__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:34px;color:#fff;opacity:0;transition:opacity .25s;z-index:2;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.k-card:hover .k-card__play{opacity:.92}
.k-card__name{margin-top:10px;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-card__name a:hover{color:var(--k-amber)}
.k-card__sub{color:var(--k-dim);font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-grid{display:grid;gap:18px}
.k-grid--6{grid-template-columns:repeat(6,1fr)}
.k-grid--5{grid-template-columns:repeat(5,1fr)}

/* ---------- 更新时刻表 / 榜单 ---------- */
.k-cols{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start}
.k-timeline{background:var(--k-panel);border:1px solid var(--k-line);border-radius:12px;overflow:hidden}
.k-row{display:flex;align-items:center;gap:14px;padding:12px 18px;border-bottom:1px solid var(--k-line);transition:background .18s}
.k-row:last-child{border-bottom:0}
.k-row:hover{background:var(--k-panel-2)}
.k-row__time{width:70px;color:var(--k-dim);font-size:12px;flex-shrink:0}
.k-row__cover{width:42px;height:56px;border-radius:4px;object-fit:cover;flex-shrink:0}
.k-row__body{flex:1;min-width:0}
.k-row__name{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-row:hover .k-row__name{color:var(--k-amber)}
.k-row__meta{color:var(--k-dim);font-size:12px}
.k-row__chapter{color:var(--k-sub);font-size:13px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-row__go{color:var(--k-amber);font-size:13px;opacity:0;transition:opacity .18s;flex-shrink:0}
.k-row:hover .k-row__go{opacity:1}
.k-tabs{margin-left:auto;display:flex;background:var(--k-panel-2);border-radius:16px;padding:3px}
.k-tabs a{padding:4px 14px;border-radius:13px;font-size:13px;color:var(--k-sub)}
.k-tabs a.is-on{background:var(--k-amber);color:#181410;font-weight:600}
.k-rank{display:none;background:var(--k-panel);border:1px solid var(--k-line);border-radius:12px;padding:8px}
.k-rank.is-on{display:block}
.k-rank__top{display:flex;align-items:center;gap:12px;padding:10px;border-radius:8px}
.k-rank__top:hover{background:var(--k-panel-2)}
.k-rank__top img{width:52px;height:70px;border-radius:6px;object-fit:cover}
.k-rank__info{flex:1;min-width:0}
.k-rank__info b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-rank__info i{font-style:normal;color:var(--k-dim);font-size:12px}
.k-rank__no{width:24px;height:24px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:var(--k-dim);background:var(--k-panel-2);flex-shrink:0}
.k-rank__no--1{background:linear-gradient(135deg,#F5C13B,#C8842A);color:#181410}
.k-rank__no--2{background:linear-gradient(135deg,#C9D2E3,#8E99AD);color:#181410}
.k-rank__no--3{background:linear-gradient(135deg,#D9975C,#A96438);color:#181410}
.k-rank__row{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:6px}
.k-rank__row:hover{background:var(--k-panel-2)}
.k-rank__row b{flex:1;font-weight:400;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-rank__row:hover b{color:var(--k-amber)}
.k-rank__row i{font-style:normal;color:var(--k-dim);font-size:12px}
.k-side-banner{display:block;margin-top:16px;padding:18px;border-radius:12px;background:linear-gradient(135deg,rgba(240,169,59,.16),rgba(200,132,42,.08));border:1px solid rgba(240,169,59,.35)}
.k-side-banner b{display:block;color:var(--k-amber);font-size:16px;margin-bottom:4px}
.k-side-banner span{color:var(--k-sub);font-size:12px}
.k-side-banner:hover{border-color:var(--k-amber)}

/* ---------- 页脚 ---------- */
.k-foot{border-top:1px solid var(--k-line);margin-top:70px;background:#08090C}
.k-foot__inner{max-width:var(--k-w);margin:0 auto;padding:44px 20px 30px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}
.k-foot__logo{font-size:17px;font-weight:700;display:flex;align-items:center;gap:8px;margin-bottom:10px}
.k-foot__desc{color:var(--k-dim);font-size:13px;margin-bottom:8px}
.k-foot__icp{color:var(--k-dim);font-size:12px}
.k-foot__title{color:var(--k-text);font-weight:600;margin-bottom:12px;font-size:14px}
.k-foot__col a{display:block;color:var(--k-dim);font-size:13px;padding:4px 0}
.k-foot__col a:hover{color:var(--k-amber)}
.k-foot__line{border-top:1px solid var(--k-line);padding:16px 20px;max-width:var(--k-w);margin:0 auto;display:flex;justify-content:space-between;gap:20px;color:var(--k-dim);font-size:12px;flex-wrap:wrap}
.k-foot__links{display:flex;gap:14px;flex-wrap:wrap}
.k-foot__links a{color:var(--k-dim)}
.k-foot__links a:hover{color:var(--k-sub)}
.k-gotop{position:fixed;right:26px;bottom:70px;width:42px;height:42px;border-radius:50%;background:var(--k-panel);border:1px solid var(--k-line);display:none;align-items:center;justify-content:center;color:var(--k-sub);z-index:90}
.k-gotop:hover{color:var(--k-amber);border-color:var(--k-amber-2)}

/* ---------- 列表 / 检索页 ---------- */
.k-page-head{padding:34px 0 6px}
.k-page-head h1{font-size:26px;font-weight:800}
.k-page-head p{color:var(--k-dim);font-size:13px;margin-top:6px}
.k-filter{background:var(--k-panel);border:1px solid var(--k-line);border-radius:12px;padding:6px 18px;margin-top:18px}
.k-filter__row{display:flex;align-items:baseline;gap:6px;padding:9px 0;border-bottom:1px dashed var(--k-line);flex-wrap:wrap}
.k-filter__row:last-child{border-bottom:0}
.k-filter__label{color:var(--k-dim);font-size:13px;width:52px;flex-shrink:0}
.k-filter__row a{padding:3px 12px;border-radius:14px;color:var(--k-sub);font-size:13px}
.k-filter__row a:hover{color:var(--k-text)}
.k-filter__row a.is-on{background:var(--k-amber);color:#181410;font-weight:600}
.k-result{margin:26px 0 8px;color:var(--k-dim);font-size:13px}
.k-result b{color:var(--k-amber);font-style:normal}
.k-empty{padding:80px 0;text-align:center;color:var(--k-dim)}
.k-empty b{display:block;font-size:40px;margin-bottom:14px;opacity:.5}
.k-empty a{color:var(--k-amber)}
.k-pager{display:flex;justify-content:center;align-items:center;gap:8px;margin:40px 0 10px;flex-wrap:wrap}
.k-pager a{min-width:36px;height:36px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;background:var(--k-panel);border:1px solid var(--k-line);border-radius:8px;color:var(--k-sub);font-size:13px}
.k-pager a:hover{border-color:var(--k-amber-2);color:var(--k-amber)}
.k-pager a.on{background:var(--k-amber);border-color:transparent;color:#181410;font-weight:700}
.k-pager select{height:36px;background:var(--k-panel);border:1px solid var(--k-line);color:var(--k-sub);border-radius:8px;padding:0 8px;outline:0}
.k-pager__info{color:var(--k-dim);font-size:12px;margin-left:6px}

/* ---------- 详情页 ---------- */
.k-de-hero{position:relative;padding:70px 0 40px;overflow:hidden}
.k-de-hero__bg{position:absolute;inset:-40px;background-size:cover;background-position:center 30%;filter:blur(28px) brightness(.42) saturate(1.1);transform:scale(1.15)}
.k-de-hero__mask{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,12,16,.35),rgba(11,12,16,.75) 70%,var(--k-bg) 100%)}
.k-de-hero__inner{position:relative;max-width:var(--k-w);margin:0 auto;padding:0 20px;display:flex;gap:34px}
.k-de-cover{flex-shrink:0;width:232px}
.k-de-cover img{width:232px;height:310px;object-fit:cover;border-radius:10px;box-shadow:0 18px 50px rgba(0,0,0,.55)}
.k-de-cover::after{content:"";display:block;height:3px;margin:14px 30px 0;border-radius:2px;background:linear-gradient(90deg,transparent,var(--k-amber),transparent)}
.k-de-info{flex:1;min-width:0;padding-top:6px}
.k-de-info h1{font-size:32px;font-weight:800;margin-bottom:12px}
.k-de-info__meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.k-de-info__author{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--k-sub);font-size:13px}
.k-de-info__author img{width:30px;height:30px;border-radius:50%;object-fit:cover}
.k-de-info__author a:hover{color:var(--k-amber)}
.k-de-info__stats{display:flex;gap:28px;margin-bottom:14px}
.k-de-info__stats b{display:block;font-size:19px;color:var(--k-amber)}
.k-de-info__stats span{color:var(--k-dim);font-size:12px}
.k-de-info__desc{color:var(--k-sub);max-width:640px;margin-bottom:20px;max-height:66px;overflow:hidden;position:relative;transition:max-height .3s}
.k-de-info__desc.is-open{max-height:600px}
.k-de-info__desc-toggle{color:var(--k-amber);cursor:pointer;font-size:13px;margin-bottom:18px;display:inline-block}
.k-de-info__btns{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.k-de-info__score{display:flex;align-items:center;gap:10px;margin-left:8px;color:var(--k-sub);font-size:13px}
.k-de-info__score b{color:var(--k-amber);font-size:22px;font-weight:800}
.k-de-body{max-width:var(--k-w);margin:0 auto;padding:10px 20px 60px;display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start}
.k-panelbox{background:var(--k-panel);border:1px solid var(--k-line);border-radius:12px;padding:20px}
.k-panelbox + .k-panelbox{margin-top:24px}
.k-panelbox__head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.k-panelbox__head h3{font-size:17px;font-weight:700}
.k-panelbox__head .k-sub{color:var(--k-dim);font-size:12px}
.k-panelbox__tools{margin-left:auto;display:flex;gap:8px;align-items:center}
.k-chapters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.k-chapters a{position:relative;display:block;padding:10px 12px;background:var(--k-panel-2);border:1px solid transparent;border-radius:8px;font-size:13px;color:var(--k-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-chapters a:hover{border-color:var(--k-amber-2);color:var(--k-amber)}
.k-chapters a .k-lock{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--k-amber)}
.k-chapters.is-folded{max-height:252px;overflow:hidden}
.k-chapters__more{text-align:center;margin-top:14px}
.k-chapters__more a{color:var(--k-amber);font-size:13px;cursor:pointer}
.k-gift-bar{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px}
.k-gift{flex:0 0 92px;text-align:center;background:var(--k-panel-2);border:1px solid transparent;border-radius:10px;padding:12px 6px;cursor:pointer;transition:border-color .2s}
.k-gift:hover,.k-gift.is-on{border-color:var(--k-amber)}
.k-gift img{width:44px;height:44px;margin:0 auto 8px;object-fit:contain}
.k-gift b{display:block;font-size:12px;font-weight:600}
.k-gift span{color:var(--k-dim);font-size:11px}
.k-gift-send{display:flex;align-items:center;gap:14px;margin-top:14px}
.k-gift-send .k-sub{color:var(--k-dim);font-size:12px}
.k-gift-send .k-sub b{color:var(--k-amber)}

/* ---------- 评论 ---------- */
.k-cm-editor{display:flex;gap:14px}
.k-cm-editor__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}
.k-cm-editor__main{flex:1;min-width:0}
.k-cm-editor textarea{width:100%;min-height:84px;background:var(--k-panel-2);border:1px solid var(--k-line);border-radius:10px;color:var(--k-text);padding:12px 14px;font:inherit;outline:0;resize:vertical}
.k-cm-editor textarea:focus{border-color:var(--k-amber-2)}
.k-cm-editor__bar{display:flex;align-items:center;margin-top:10px;gap:12px}
.k-cm-face-btn{color:var(--k-sub);font-size:13px;cursor:pointer;position:relative}
.k-cm-face-btn:hover{color:var(--k-amber)}
.k-cm-faces{position:absolute;top:24px;left:-10px;z-index:30;background:var(--k-panel);border:1px solid var(--k-line);border-radius:10px;padding:10px;display:none;grid-template-columns:repeat(5,1fr);gap:6px;width:280px;box-shadow:0 14px 34px rgba(0,0,0,.5)}
.k-cm-faces.is-open{display:grid}
.k-cm-faces span{cursor:pointer;text-align:center;padding:4px;border-radius:6px;font-size:12px;color:var(--k-sub)}
.k-cm-faces span:hover{background:var(--k-panel-2)}
.k-cm-faces img{width:30px;height:30px;margin:0 auto 2px}
.k-cm-item{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--k-line)}
.k-cm-item:last-child{border-bottom:0}
.k-cm-item__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}
.k-cm-item__main{flex:1;min-width:0}
.k-cm-item__name{font-size:13px;color:var(--k-sub);font-weight:600}
.k-cm-item__time{color:var(--k-dim);font-size:12px;margin-left:8px;font-weight:400}
.k-cm-item__text{margin:6px 0 8px;color:var(--k-text);font-size:14px;word-break:break-word}
.k-cm-item__acts{display:flex;gap:18px;color:var(--k-dim);font-size:12px}
.k-cm-item__acts a{color:var(--k-dim);cursor:pointer}
.k-cm-item__acts a:hover,.k-cm-item__acts a.is-on{color:var(--k-amber)}
.k-cm-reply{margin-top:12px;background:var(--k-panel-2);border-radius:10px;padding:4px 14px}
.k-cm-reply .k-cm-item{padding:12px 0;border-bottom:1px solid var(--k-line)}
.k-cm-reply .k-cm-item:last-child{border-bottom:0}
.k-cm-reply .k-cm-item__avatar{width:30px;height:30px}
.k-cm-replybox{margin-top:10px;display:none}
.k-cm-replybox.is-open{display:block}
.k-cm-replybox textarea{width:100%;min-height:60px;background:var(--k-panel-2);border:1px solid var(--k-line);border-radius:8px;color:var(--k-text);padding:10px 12px;font:inherit;outline:0}
.k-cm-replybox .k-btn{margin-top:8px}
.k-cm-empty{text-align:center;color:var(--k-dim);padding:34px 0}
.k-cm-pager{display:flex;justify-content:center;gap:8px;margin-top:18px;flex-wrap:wrap}
.k-cm-pager a{min-width:30px;height:30px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;background:var(--k-panel-2);border-radius:6px;color:var(--k-sub);font-size:12px}
.k-cm-pager a.on{background:var(--k-amber);color:#181410;font-weight:700}

/* ---------- 阅读器 ---------- */
body.k-rd-body{background:#000}
.k-rd-top{position:fixed;top:0;left:0;right:0;z-index:100;height:52px;display:flex;align-items:center;gap:16px;padding:0 20px;background:rgba(10,10,12,.92);backdrop-filter:blur(10px);border-bottom:1px solid #1A1C22;transition:transform .3s}
.k-rd-top.is-hide{transform:translateY(-100%)}
.k-rd-top__logo{font-weight:800;color:var(--k-amber);font-size:15px;flex-shrink:0}
.k-rd-top__crumb{display:flex;align-items:center;gap:8px;min-width:0;color:var(--k-dim);font-size:13px}
.k-rd-top__crumb a{color:var(--k-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.k-rd-top__crumb a:hover{color:var(--k-amber)}
.k-rd-top__crumb h1{font-size:13px;font-weight:600;color:var(--k-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-rd-top__page{margin-left:auto;color:var(--k-sub);font-size:13px;flex-shrink:0}
.k-rd-top__page b{color:var(--k-amber)}
.k-rd-stage{max-width:840px;margin:0 auto;padding:66px 0 30px;min-height:100vh}
.k-rd-pic{margin-bottom:4px}
.k-rd-pic img{width:100%;height:auto;background:#101014}
.k-rd-tip{color:#5A5F6B;text-align:center;font-size:12px;padding:20px 0}
.k-rd-end{max-width:840px;margin:0 auto;padding:40px 20px 80px;text-align:center}
.k-rd-end__txt{color:var(--k-sub);margin-bottom:20px}
.k-rd-end__btns{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.k-rd-side{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:99;display:flex;flex-direction:column;gap:10px}
.k-rd-side__btn{width:46px;height:46px;border-radius:12px;background:rgba(20,22,28,.92);border:1px solid #23262F;color:var(--k-sub);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font-size:11px;gap:2px;transition:all .2s;position:relative}
.k-rd-side__btn svg{width:17px;height:17px}
.k-rd-side__btn:hover,.k-rd-side__btn.is-on{color:var(--k-amber);border-color:var(--k-amber-2)}
.k-rd-side__btn.is-disabled{opacity:.35;pointer-events:none}
.k-rd-progress{position:fixed;left:0;bottom:0;height:3px;background:var(--k-amber);z-index:101;width:0;transition:width .2s}
.k-rd-catalog{position:fixed;right:80px;top:50%;transform:translateY(-50%);width:300px;max-height:74vh;background:var(--k-panel);border:1px solid var(--k-line);border-radius:14px;z-index:98;display:none;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.k-rd-catalog.is-open{display:flex}
.k-rd-catalog__head{padding:14px 18px;border-bottom:1px solid var(--k-line);display:flex;justify-content:space-between;color:var(--k-sub);font-size:13px}
.k-rd-catalog__list{overflow-y:auto;padding:8px}
.k-rd-catalog__list a{display:flex;gap:8px;align-items:center;padding:9px 12px;border-radius:8px;color:var(--k-sub);font-size:13px}
.k-rd-catalog__list a:hover{background:var(--k-panel-2);color:var(--k-text)}
.k-rd-catalog__list a.is-cur{color:var(--k-amber);background:rgba(240,169,59,.1)}
.k-rd-catalog__list .k-lock{margin-left:auto;font-size:11px;color:var(--k-amber)}
.k-rd-wall{max-width:520px;margin:120px auto;background:var(--k-panel);border:1px solid var(--k-line);border-radius:16px;padding:40px;text-align:center}
.k-rd-wall h2{font-size:20px;margin-bottom:8px}
.k-rd-wall p{color:var(--k-sub);margin-bottom:6px}
.k-rd-wall .k-price{color:var(--k-amber);font-size:26px;font-weight:800;margin:14px 0}
.k-rd-wall .k-btn{margin-top:14px}
.k-rd-wall label{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px;color:var(--k-dim);font-size:13px;cursor:pointer}

/* ---------- 认证页（登录/注册/找回） ---------- */
.k-auth{min-height:calc(100vh - 64px);display:grid;grid-template-columns:1.1fr 1fr}
.k-auth__vision{position:relative;overflow:hidden;background:var(--k-panel)}
.k-auth__vision-bg{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;opacity:.5;filter:brightness(.55)}
.k-auth__vision-bg img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.k-auth__vision-mask{position:absolute;inset:0;background:linear-gradient(120deg,rgba(11,12,16,.4),rgba(11,12,16,.92))}
.k-auth__slogan{position:absolute;left:44px;bottom:52px;z-index:2}
.k-auth__slogan b{font-size:30px;font-weight:800;display:block;margin-bottom:8px}
.k-auth__slogan span{color:var(--k-sub)}
.k-auth__panel{display:flex;align-items:center;justify-content:center;padding:40px 20px}
.k-auth__box{width:100%;max-width:380px}
.k-auth__box h1{font-size:24px;font-weight:800;margin-bottom:6px}
.k-auth__box .k-auth__sub{color:var(--k-dim);font-size:13px;margin-bottom:26px}
.k-auth__box .k-auth__sub a{color:var(--k-amber)}
.k-field{margin-bottom:16px}
.k-field label{display:block;color:var(--k-sub);font-size:13px;margin-bottom:7px}
.k-field input,.k-field select,.k-field textarea{width:100%;height:44px;background:var(--k-panel);border:1px solid var(--k-line);border-radius:10px;color:var(--k-text);padding:0 14px;font:inherit;outline:0;transition:border-color .2s}
.k-field textarea{height:auto;min-height:90px;padding:12px 14px;resize:vertical}
.k-field input:focus,.k-field select:focus,.k-field textarea:focus{border-color:var(--k-amber)}
.k-field__row{display:flex;gap:10px}
.k-field__row .k-btn{flex-shrink:0}
.k-field__code img{height:44px;border-radius:10px;cursor:pointer}
.k-field__err{color:var(--k-danger);font-size:12px;margin-top:6px;display:none}
.k-field.has-err input{border-color:var(--k-danger)}
.k-field.has-err .k-field__err{display:block}
.k-auth__opts{display:flex;justify-content:space-between;align-items:center;margin:4px 0 20px;color:var(--k-dim);font-size:13px}
.k-auth__opts label{display:flex;gap:6px;align-items:center;cursor:pointer}
.k-auth__opts a{color:var(--k-sub)}
.k-auth__opts a:hover{color:var(--k-amber)}
.k-auth__third{margin-top:26px;text-align:center}
.k-auth__third-line{display:flex;align-items:center;gap:12px;color:var(--k-dim);font-size:12px;margin-bottom:14px}
.k-auth__third-line::before,.k-auth__third-line::after{content:"";flex:1;height:1px;background:var(--k-line)}
.k-auth__third-btns{display:flex;justify-content:center;gap:14px}
.k-auth__third-btns a{width:42px;height:42px;border-radius:50%;border:1px solid var(--k-line);display:inline-flex;align-items:center;justify-content:center;color:var(--k-sub);font-weight:700}
.k-auth__third-btns a:hover{border-color:var(--k-amber);color:var(--k-amber)}

/* ---------- 用户中心 ---------- */
.k-uc{max-width:var(--k-w);margin:0 auto;padding:30px 20px 60px;display:grid;grid-template-columns:230px 1fr;gap:26px;align-items:start}
.k-uc-side{background:var(--k-panel);border:1px solid var(--k-line);border-radius:14px;overflow:hidden;position:sticky;top:84px}
.k-uc-side__me{padding:22px 18px;text-align:center;border-bottom:1px solid var(--k-line);background:linear-gradient(180deg,rgba(240,169,59,.07),transparent)}
.k-uc-side__me img{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto 10px;border:2px solid var(--k-amber-2)}
.k-uc-side__me b{display:block;font-size:15px}
.k-uc-side__me span{color:var(--k-dim);font-size:12px}
.k-uc-side__vip{display:inline-flex;margin-top:8px;padding:2px 10px;border-radius:10px;background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));color:#181410;font-size:11px;font-weight:700}
.k-uc-side__vip--off{background:var(--k-panel-2);color:var(--k-dim)}
.k-uc-side__funds{display:flex;border-bottom:1px solid var(--k-line)}
.k-uc-side__funds a{flex:1;text-align:center;padding:12px 4px}
.k-uc-side__funds a + a{border-left:1px solid var(--k-line)}
.k-uc-side__funds b{display:block;color:var(--k-amber);font-size:16px}
.k-uc-side__funds span{color:var(--k-dim);font-size:11px}
.k-uc-side__menu{padding:10px}
.k-uc-side__menu p{color:var(--k-dim);font-size:11px;padding:10px 10px 4px;letter-spacing:1px}
.k-uc-side__menu a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:var(--k-sub);font-size:13px}
.k-uc-side__menu a:hover{background:var(--k-panel-2);color:var(--k-text)}
.k-uc-side__menu a.is-on{background:rgba(240,169,59,.12);color:var(--k-amber);font-weight:600}
.k-uc-main{min-width:0}
.k-uc-panel{background:var(--k-panel);border:1px solid var(--k-line);border-radius:14px;padding:24px}
.k-uc-panel + .k-uc-panel{margin-top:22px}
.k-uc-panel__head{display:flex;align-items:center;margin-bottom:20px;gap:12px}
.k-uc-panel__head h2{font-size:18px;font-weight:700}
.k-uc-panel__head .k-sub{color:var(--k-dim);font-size:12px}
.k-uc-panel__head .k-uc-panel__tools{margin-left:auto;display:flex;gap:10px}
.k-uc-hero{display:flex;gap:20px;align-items:center;background:linear-gradient(135deg,rgba(240,169,59,.12),rgba(20,22,28,.4));border:1px solid rgba(240,169,59,.28);border-radius:14px;padding:24px}
.k-uc-hero img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid var(--k-amber-2)}
.k-uc-hero__info{flex:1}
.k-uc-hero__info b{font-size:19px;display:block;margin-bottom:4px}
.k-uc-hero__info span{color:var(--k-sub);font-size:13px}
.k-uc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.k-uc-stat{background:var(--k-panel);border:1px solid var(--k-line);border-radius:12px;padding:16px;position:relative;overflow:hidden}
.k-uc-stat b{font-size:22px;color:var(--k-amber);display:block}
.k-uc-stat span{color:var(--k-dim);font-size:12px}
.k-uc-stat a{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--k-sub);font-size:12px}
.k-uc-stat a:hover{color:var(--k-amber)}
.k-table{width:100%;border-collapse:collapse}
.k-table th{text-align:left;color:var(--k-dim);font-size:12px;font-weight:500;padding:10px 12px;border-bottom:1px solid var(--k-line)}
.k-table td{padding:12px;border-bottom:1px solid var(--k-line);font-size:13px;color:var(--k-sub)}
.k-table tr:last-child td{border-bottom:0}
.k-table tr:hover td{background:var(--k-panel-2)}
.k-table td b{color:var(--k-text);font-weight:600}
.k-table td a{color:var(--k-text)}
.k-table td a:hover{color:var(--k-amber)}
.k-table .k-amber{color:var(--k-amber)}
.k-table .k-red{color:var(--k-danger)}
.k-table .k-green{color:var(--k-ok)}
.k-shelf{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.k-form{max-width:520px}
.k-form__acts{margin-top:24px;display:flex;gap:12px}
.k-avatar-edit{display:flex;gap:22px;align-items:center;margin-bottom:26px}
.k-avatar-edit img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--k-line)}
.k-avatar-edit__tip{color:var(--k-dim);font-size:12px;margin-top:6px}
.k-paycard{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:8px}
.k-paycard a{display:block;background:var(--k-panel-2);border:1px solid var(--k-line);border-radius:14px;padding:22px;text-align:center;transition:all .2s}
.k-paycard a:hover{border-color:var(--k-amber);transform:translateY(-3px)}
.k-paycard b{display:block;font-size:17px;margin-bottom:6px}
.k-paycard span{color:var(--k-dim);font-size:12px}
.k-paycard i{display:block;font-style:normal;font-size:30px;margin-bottom:10px}
.k-plans{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.k-plan{background:var(--k-panel-2);border:2px solid var(--k-line);border-radius:14px;padding:20px 14px;text-align:center;cursor:pointer;transition:all .2s;position:relative}
.k-plan:hover{border-color:var(--k-amber-2)}
.k-plan.is-on{border-color:var(--k-amber);background:rgba(240,169,59,.08)}
.k-plan__name{color:var(--k-sub);font-size:13px;margin-bottom:8px}
.k-plan__price{font-size:24px;font-weight:800;color:var(--k-amber)}
.k-plan__price i{font-style:normal;font-size:13px}
.k-plan__tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--k-danger);color:#fff;font-size:11px;padding:2px 10px;border-radius:9px;white-space:nowrap}
.k-payways{display:flex;gap:12px;margin:18px 0;flex-wrap:wrap}
.k-payway{display:flex;align-items:center;gap:8px;padding:12px 22px;background:var(--k-panel-2);border:2px solid var(--k-line);border-radius:10px;cursor:pointer;font-size:14px;color:var(--k-sub)}
.k-payway.is-on{border-color:var(--k-amber);color:var(--k-text)}
.k-amount-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}
.k-amount{padding:16px 6px;text-align:center;background:var(--k-panel-2);border:2px solid var(--k-line);border-radius:10px;cursor:pointer;transition:all .2s}
.k-amount:hover{border-color:var(--k-amber-2)}
.k-amount.is-on{border-color:var(--k-amber);background:rgba(240,169,59,.08)}
.k-amount b{display:block;font-size:17px;color:var(--k-amber)}
.k-amount span{color:var(--k-dim);font-size:11px}
.k-qrbox{text-align:center;padding:26px}
.k-qrbox img{width:180px;height:180px;margin:0 auto 14px;background:#fff;border-radius:10px;padding:8px}
.k-msg-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--k-line)}
.k-msg-item:last-child{border-bottom:0}
.k-msg-item__dot{width:8px;height:8px;border-radius:50%;background:var(--k-danger);margin-top:8px;flex-shrink:0}
.k-msg-item__dot.is-read{background:var(--k-line)}
.k-msg-item__main{flex:1;min-width:0}
.k-msg-item__main b{font-size:14px;font-weight:600}
.k-msg-item__main p{color:var(--k-sub);font-size:13px;margin-top:4px}
.k-msg-item__time{color:var(--k-dim);font-size:12px;flex-shrink:0}
.k-bind-item{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--k-line)}
.k-bind-item:last-child{border-bottom:0}
.k-bind-item__icon{width:42px;height:42px;border-radius:10px;background:var(--k-panel-2);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;color:var(--k-sub)}
.k-bind-item__info{flex:1}
.k-bind-item__info b{display:block;font-size:14px}
.k-bind-item__info span{color:var(--k-dim);font-size:12px}

/* ---------- 作者中心补充 ---------- */
.k-au-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.k-upload{border:2px dashed var(--k-line);border-radius:12px;padding:30px;text-align:center;color:var(--k-dim);cursor:pointer;transition:border-color .2s}
.k-upload:hover{border-color:var(--k-amber-2);color:var(--k-sub)}
.k-upload img{max-height:160px;margin:0 auto 10px;border-radius:8px}
.k-au-comic{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--k-line);border-radius:12px;margin-bottom:12px;background:var(--k-panel-2)}
.k-au-comic img{width:56px;height:74px;border-radius:6px;object-fit:cover}
.k-au-comic__info{flex:1;min-width:0}
.k-au-comic__info b{display:block;font-size:14px}
.k-au-comic__info span{color:var(--k-dim);font-size:12px}
.k-au-comic__acts{display:flex;gap:8px}
.k-state{display:inline-flex;padding:2px 10px;border-radius:10px;font-size:11px}
.k-state--ok{background:rgba(63,178,127,.15);color:var(--k-ok)}
.k-state--wait{background:rgba(240,169,59,.15);color:var(--k-amber)}
.k-state--no{background:rgba(229,72,77,.15);color:var(--k-danger)}

/* ---------- 书页（小说） ---------- */
.k-bk-read{max-width:760px;margin:0 auto;padding:40px 20px 80px}
.k-bk-read__head{text-align:center;margin-bottom:34px}
.k-bk-read__head h1{font-size:24px;font-weight:800;margin-bottom:8px}
.k-bk-read__head p{color:var(--k-dim);font-size:13px}
.k-bk-read__body{font-size:17px;line-height:2;color:#C9CEDA}
.k-bk-read__body p{margin-bottom:1em;text-indent:2em}
.k-bk-read__nav{display:flex;justify-content:center;gap:14px;margin-top:44px}
.k-bk-toc{columns:2;column-gap:24px}
.k-bk-toc a{display:flex;justify-content:space-between;gap:10px;padding:10px 6px;border-bottom:1px dashed var(--k-line);color:var(--k-sub);font-size:13px;break-inside:avoid}
.k-bk-toc a:hover{color:var(--k-amber)}
.k-bk-toc .k-lock{color:var(--k-amber);font-size:11px}

/* ---------- 错误页 ---------- */
.k-err{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px}
.k-err b{font-size:80px;font-weight:800;background:linear-gradient(135deg,var(--k-amber),var(--k-amber-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.k-err p{color:var(--k-sub);margin:14px 0 26px}

/* ---------- 响应式（PC 模板容错到平板） ---------- */
@media (max-width: 1080px){
  .k-grid--6{grid-template-columns:repeat(4,1fr)}
  .k-grid--5,.k-shelf{grid-template-columns:repeat(4,1fr)}
  .k-cols{grid-template-columns:1fr}
  .k-de-body{grid-template-columns:1fr}
  .k-auth{grid-template-columns:1fr}
  .k-auth__vision{display:none}
  .k-hero__thumbs{display:none}
  .k-uc{grid-template-columns:1fr}
  .k-uc-side{position:static}
  .k-nav__menu{display:none}
}
@media (max-width: 720px){
  .k-grid--6,.k-grid--5,.k-shelf{grid-template-columns:repeat(3,1fr)}
  .k-chapters{grid-template-columns:repeat(2,1fr)}
  .k-hero__title{font-size:28px}
  .k-de-hero__inner{flex-direction:column}
  .k-uc-stats,.k-au-grid{grid-template-columns:repeat(2,1fr)}
  .k-plans{grid-template-columns:repeat(2,1fr)}
  .k-amount-grid{grid-template-columns:repeat(3,1fr)}
  .k-foot__inner{grid-template-columns:1fr 1fr}
  .k-bk-toc{columns:1}
}
