@charset "utf-8";
/* ============================================================
   拾光直播 · 奶油晨光主题（覆盖 live.css，必须最后加载）
   ============================================================ */

:root{
  --bg:#FBF3E4;
  --bg-1:#FFFDF8;
  --bg-2:#FFFFFF;
  --bg-3:#F7EEDF;
  --line:#EADCC6;
  --line-2:#E0CFB4;
  --text:#241F1A;
  --text-2:#5A5146;
  --muted:#8A8175;
  --brand:#FF7A59;
  --brand-2:#17A398;
  --ok:#2F9E62;
  --warn:#C98A1E;
  --info:#0F766E;
  --glow:0 0 0 3px rgba(255,122,89,.18);
  --shadow:0 14px 36px rgba(96,72,40,.10);
  --r-s:10px;
  --r:16px;
  --r-l:24px;
  --wrap:1180px;
}

/* ---------- 基础 ---------- */
body{
  background:
    radial-gradient(1000px 460px at 6% -8%, #FFF8EA 0%, rgba(255,248,234,0) 62%),
    radial-gradient(880px 420px at 104% -6%, #F8EAD4 0%, rgba(248,234,212,0) 58%),
    var(--bg);
  color:var(--text-2);
}
body::before{
  height:420px;
  background:
    radial-gradient(760px 300px at 12% -10%, rgba(255,122,89,.14), transparent 70%),
    radial-gradient(680px 280px at 88% -12%, rgba(23,163,152,.10), transparent 70%);
}
::selection{background:var(--brand);color:#fff;}
::-webkit-scrollbar-track{background:var(--bg-1);}
::-webkit-scrollbar-thumb{background:#E3D3BB;border:2px solid var(--bg-1);}
::-webkit-scrollbar-thumb:hover{background:#D6C3A6;}

h1,h2,h3,.lv-logo b,.lv-foot-brand,.sg-auth-brand h2,.sg-auth-panel h1,.lv-crumb h1,.lv-hero-txt h1{
  font-family:Georgia,"Songti SC","Noto Serif SC","Source Han Serif SC",serif;
  letter-spacing:.02em;
}

/* ---------- 顶栏 ---------- */
.lv-topbar{
  background:rgba(255,253,248,.88);
  border-bottom:1px solid var(--line);
  box-shadow:0 6px 24px rgba(96,72,40,.05);
}
.lv-logo{color:var(--text);}
.lv-logo:hover{color:var(--text);}
.lv-logo-mark{
  background:linear-gradient(140deg,#FFA184,var(--brand) 54%,#E4563A);
  box-shadow:0 8px 20px rgba(255,122,89,.32);
}
.lv-logo b{
  background:none;
  -webkit-text-fill-color:currentColor;
  color:var(--text);
  font-weight:700;
}
.lv-nav a{color:var(--text-2);}
.lv-nav a:hover{background:var(--bg-3);color:var(--text);}
.lv-nav a.on{
  color:var(--brand) !important;
  background:var(--brand);
  background:linear-gradient(135deg,rgba(255,122,89,.16),rgba(23,163,152,.10));
  box-shadow:inset 0 0 0 1px rgba(255,122,89,.22);
  font-weight:700;
}
.lv-usr{color:var(--text-2);}
.lv-burger{background:#fff;border-color:var(--line);}
.lv-burger i,.lv-burger i::before,.lv-burger i::after{background:var(--text);}
.lv-search-mini input{background:#fff;border-color:var(--line);color:var(--text);}
.lv-search-mini input::placeholder{color:#B7AB99;}
.lv-search-mini input:focus{
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(255,122,89,.15);
}
.lv-search-mini button{color:var(--muted);}
.lv-search-mini button:hover{color:var(--brand-strong,var(--brand));background:var(--bg-3);}

.lv-drawer{background:var(--bg-1);border-left:1px solid var(--line);}
.lv-drawer a{color:var(--text-2);}
.lv-drawer a:hover,.lv-drawer a.on{background:var(--bg-3);color:var(--text);}
.lv-drawer-hd{color:var(--brand);}
.lv-drawer-sub{color:var(--muted) !important;}
.lv-mask{background:rgba(36,31,26,.34);}
.lv-tabbar{
  background:rgba(255,253,248,.96);
  border-top:1px solid var(--line);
  box-shadow:0 -8px 24px rgba(96,72,40,.06);
}
.lv-tabbar a{color:var(--muted);}
.lv-tabbar a.on{color:var(--brand);}

/* ---------- 按钮 ---------- */
.lv-btn{
  background:var(--bg-3);
  color:var(--text);
  border-radius:11px;
  font-weight:700;
}
.lv-btn:hover{background:var(--line);color:var(--text);}
.lv-btn-primary{
  background:linear-gradient(135deg,#FF8E6F,var(--brand) 56%,#E4563A);
  color:#fff;
  box-shadow:0 8px 20px rgba(255,122,89,.28);
}
.lv-btn-primary:hover{
  background:linear-gradient(135deg,#FF8E6F,#E4563A);
  color:#fff;
  box-shadow:0 12px 26px rgba(255,122,89,.36);
}
.lv-btn-ghost{background:#fff;border-color:var(--line);color:var(--text-2);}
.lv-btn-ghost:hover{background:var(--bg-3);color:var(--text);border-color:#D9C6A8;}

/* ---------- 卡片 / 主播卡 ---------- */
.lv-card,.lv-anchor,.lv-stage-side,.lv-art,.lv-stat,.lv-table-wrap{
  background:var(--bg-2);
  border-color:var(--line);
}
.lv-card{box-shadow:0 8px 24px rgba(96,72,40,.06);}
.lv-card-h{border-bottom-color:var(--line);}
.lv-anchor{box-shadow:0 8px 22px rgba(96,72,40,.06);}
.lv-anchor:hover{border-color:#F3B9A7;box-shadow:var(--shadow);}
.lv-anchor-img{background:var(--bg-3);}
.lv-anchor-img::after{background:linear-gradient(transparent,rgba(36,31,26,.72));}
.lv-live{background:var(--brand);box-shadow:0 4px 14px rgba(255,122,89,.4);}
.lv-live-off{background:var(--bg-3);color:var(--muted);box-shadow:none;}
.lv-stage-side h3{border-bottom-color:var(--line);}
.lv-stage-list a{border-bottom-color:var(--line);}
.lv-stage-list a:hover,.lv-stage-list a.on{background:var(--bg-3);}
.lv-stage-list img{background:var(--bg-3);}
.lv-sched-item{border-color:var(--line);background:var(--bg-2);}
.lv-sched-item:hover{border-color:#E2CFB2;}

/* ---------- 标签 ---------- */
.lv-tag{background:var(--bg-3);border-color:var(--line);color:var(--text-2);}
.lv-tag-brand{background:#FFE7DD;border-color:#F7C9B8;color:#D94F32;}
.lv-tag-ok{background:#DDF1E5;border-color:#BEE6D0;color:#237A4B;}
.lv-tag-warn{background:#FBEBCB;border-color:#F0D9A8;color:#94660F;}
.lv-tag-info{background:#DFF4F1;border-color:#BDE8E2;color:#0F766E;}

/* ---------- 表单 ---------- */
.lv-field > label{color:var(--text-2);}
.lv-input,.lv-select,.lv-textarea{
  background:#FFFDF8;
  border-color:var(--line);
  color:var(--text);
  border-radius:12px;
}
.lv-input::placeholder,.lv-textarea::placeholder{color:#B7AB99;}
.lv-input:focus,.lv-select:focus,.lv-textarea:focus{
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(255,122,89,.15);
  background:#fff;
}
.lv-select option{background:#fff;color:var(--text);}
.lv-check{color:var(--text-2);}
.lv-err{color:#B8423E;}

/* ---------- 表格 / 分页 ---------- */
.lv-table th,.lv-table td{border-bottom-color:var(--line);}
.lv-table thead th{background:var(--bg-3);color:var(--text-2);}
.lv-table tbody tr:hover{background:#FFFAF1;}
.lv-pager a,.lv-pager span{border-color:var(--line);background:#fff;color:var(--text-2);}
.lv-pager a:hover{border-color:var(--brand);color:var(--text);background:var(--bg-3);}
.lv-pager .on{background:var(--brand);border-color:var(--brand);color:#fff;}
.pagination li a,.pagination li span{border-color:var(--line);background:#fff;color:var(--text-2);}
.pagination li a:hover{border-color:var(--brand);color:var(--text);background:var(--bg-3);}
.pagination li.active span,.pagination li.active a{background:var(--brand);border-color:var(--brand);color:#fff;}

/* ---------- 会员中心 ---------- */
.lv-user-wrap{grid-template-columns:258px minmax(0,1fr);gap:22px;}
.lv-side{
  background:linear-gradient(180deg,#FFFDF8,#FBF3E4);
  border-color:var(--line);
  box-shadow:0 10px 28px rgba(96,72,40,.07);
}
.lv-side-hd{
  background:
    radial-gradient(220px 120px at 90% 0%, rgba(255,122,89,.16), transparent 70%),
    linear-gradient(160deg,#FFFDF8,#F8EBD8);
  border-bottom-color:var(--line);
}
.lv-side-hd .av{background:var(--brand);color:#fff;}
.lv-side-hd b{color:var(--text);}
.lv-side-hd span{color:var(--muted);}
.lv-side nav a{color:var(--text-2);}
.lv-side nav a:hover{background:var(--bg-3);color:var(--text);}
.lv-side nav a.on{
  background:var(--brand-soft,#FFE7DD);
  background:linear-gradient(135deg,#FFE7DD,#DFF4F1);
  color:#D94F32;
  box-shadow:inset 3px 0 0 var(--brand);
}
.lv-side-out{border-top-color:var(--line);}
.lv-art{box-shadow:0 10px 28px rgba(96,72,40,.07);}
.lv-art-h{background:linear-gradient(180deg,#FFFDF8,#FFFFFF);border-bottom-color:var(--line);}
.lv-art-h h1{color:var(--text);}
.lv-stat{background:#fff;}
.lv-stat::before{background:linear-gradient(180deg,var(--brand),var(--brand-2));}
.lv-stat b{color:var(--text);}
.lv-stat span{color:var(--muted);}

/* ---------- 首页 ---------- */
.lv-hero{
  background:
    radial-gradient(760px 320px at 18% -4%, rgba(255,122,89,.18), transparent 70%),
    radial-gradient(640px 300px at 86% 6%, rgba(23,163,152,.14), transparent 70%),
    linear-gradient(180deg,#FFFDF8,#FBF3E4);
  border-bottom-color:var(--line);
}
.lv-hero-txt h1{
  background:none;
  -webkit-text-fill-color:currentColor;
  color:var(--text);
  font-weight:700;
}
.lv-hero-txt p{color:var(--text-2);}
.lv-crumb{
  background:linear-gradient(180deg,rgba(255,122,89,.07),transparent);
  border-bottom-color:var(--line);
}
.lv-crumb h1{color:var(--text);}
.lv-crumb ol,.lv-crumb ol a{color:var(--muted);}

/* ---------- 提示 / 空状态 ---------- */
.lv-note{background:#F3FBF9;border-color:#CFE9E4;color:#0F766E;}
.lv-note-warn{background:#FDF4E3;border-color:#F0DDB7;color:#94660F;}
.lv-note-err{background:#FCEBE9;border-color:#F3C9C4;color:#B8423E;}
.lv-empty{color:var(--muted);}
.lv-empty svg{stroke:#D9C6A8;}
.lv-empty b{color:var(--text-2);}

/* ---------- 页脚 ---------- */
.lv-foot{background:linear-gradient(180deg,#FFFDF8,#F7EDDC);border-top-color:var(--line);}
.lv-foot h4{color:var(--text);}
.lv-foot p,.lv-foot li,.lv-foot a,.lv-foot-copy,.lv-foot-copy a{color:var(--muted);}
.lv-foot a:hover{color:var(--brand-strong,#D94F32);}
.lv-foot-brand{color:var(--text);}
.lv-foot-copy{border-top-color:var(--line);}

/* ---------- 文章正文 ---------- */
.lv-rich{color:var(--text-2);}
.lv-rich h1,.lv-rich h2,.lv-rich h3{color:var(--text);}
.lv-rich th,.lv-rich td{border-color:var(--line);}

/* ---------- 播放器 / 弹幕 / 礼物：只有视频区域保持深色 ---------- */
.lv-player{background:#0B0A09;}
.lv-player-wrap{background:transparent;}
.lv-player video{background:#000;}

/* ---------- 登录 / 注册 ---------- */
.lv-auth{
  background:
    radial-gradient(900px 420px at 4% -10%, #FFF8EA, transparent 62%),
    radial-gradient(820px 400px at 102% 0%, #F8EAD4, transparent 58%),
    var(--bg);
}
.lv-auth-box{background:#fff;border-color:var(--line);box-shadow:0 24px 60px rgba(96,72,40,.14);}
.lv-auth-sub{color:var(--muted);}
.lv-auth-foot{color:var(--muted);}
.lv-auth-foot a{color:#D94F32;}
.lv-auth-back{color:var(--muted);}

.sg-auth-page{
  min-height:100vh;display:grid;place-items:center;padding:36px 20px;
  background:
    radial-gradient(1000px 460px at 4% -10%, #FFF8EA, transparent 62%),
    radial-gradient(880px 420px at 102% 0%, #F8EAD4, transparent 58%),
    var(--bg);
}
.sg-auth-shell{
  display:grid;grid-template-columns:1.02fr .98fr;width:100%;max-width:980px;
  background:#FFFDF8;border:1px solid var(--line);border-radius:28px;
  box-shadow:0 30px 70px rgba(96,72,40,.16);overflow:hidden;
}
.sg-auth-brand{
  position:relative;overflow:hidden;padding:48px 42px;display:flex;flex-direction:column;justify-content:center;
  background:
    radial-gradient(420px 220px at 90% 4%, rgba(255,122,89,.22), transparent 70%),
    radial-gradient(360px 220px at 4% 100%, rgba(23,163,152,.15), transparent 70%),
    linear-gradient(150deg,#FFFDF8,#FBF0DD);
}
.sg-auth-brand::after{
  content:"";position:absolute;right:-70px;bottom:-80px;width:260px;height:260px;border-radius:50%;
  border:1px solid rgba(255,122,89,.32);
  box-shadow:0 0 0 28px rgba(255,122,89,.06),0 0 0 56px rgba(255,122,89,.035);
}
.sg-auth-brand .sg-mark{
  width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:16px;
  font-family:Georgia,"Songti SC",serif;font-size:23px;font-weight:700;color:#fff;
  background:linear-gradient(140deg,#FFA184,var(--brand) 52%,#E4563A);
  box-shadow:0 10px 24px rgba(255,122,89,.34);
}
.sg-auth-brand .sg-brand{display:flex;align-items:center;gap:12px;color:var(--text);}
.sg-auth-brand .sg-brand b{font-family:Georgia,"Songti SC",serif;font-size:21px;letter-spacing:.06em;}
.sg-auth-brand .sg-brand small{display:block;font-size:10px;letter-spacing:.24em;color:var(--muted);}
.sg-auth-brand h2{margin:42px 0 10px;font-size:33px;line-height:1.28;color:var(--text);}
.sg-auth-brand h2 em{font-style:normal;color:#D94F32;}
.sg-auth-brand p{margin:0;font-size:13.5px;color:var(--text-2);max-width:310px;}
.sg-auth-points{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:12px;}
.sg-auth-points li{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--text-2);}
.sg-auth-points i{
  width:26px;height:26px;flex:0 0 26px;display:grid;place-items:center;border-radius:9px;
  background:#fff;color:#0F766E;box-shadow:0 4px 12px rgba(96,72,40,.10);font-style:normal;
}
.sg-auth-panel{
  padding:48px 44px 40px;background:#fff;display:flex;flex-direction:column;justify-content:center;position:relative;
}
.sg-auth-panel h1{margin:0 0 6px;font-size:26px;color:var(--text);}
.sg-auth-panel .sg-sub{margin:0 0 26px;font-size:12.5px;color:var(--muted);}
.sg-auth-back{
  position:absolute;right:24px;top:22px;font-size:12px;color:var(--muted) !important;
}
.sg-auth-back:hover{color:#D94F32 !important;}
.sg-auth-panel .lv-btn-lg{height:50px;}

@media (max-width:860px){
  .sg-auth-page{padding:18px 14px;}
  .sg-auth-shell{grid-template-columns:1fr;max-width:460px;}
  .sg-auth-brand{padding:28px 26px 24px;}
  .sg-auth-brand h2{margin:20px 0 8px;font-size:26px;}
  .sg-auth-points{display:none;}
  .sg-auth-panel{padding:30px 26px 30px;}
  .sg-auth-back{top:18px;right:18px;}
}
@media (max-width:420px){
  .sg-auth-brand{padding:24px 20px 20px;}
  .sg-auth-panel{padding:26px 20px;}
}

/* ---------- 关注按钮 / 主播卡脚 ---------- */
.lv-anchor-foot{background:linear-gradient(180deg,#FFFDF8,#FFFFFF);border-top-color:var(--line);}
.lv-follow{
  border-color:#F3B9A7;
  background:#FFE7DD;
  color:#D94F32;
}
.lv-follow:hover{background:var(--brand);border-color:var(--brand);color:#fff;}
.lv-follow.on{background:transparent;border-color:var(--line);color:var(--muted);}
.lv-follow.on:hover{background:#FFE7DD;border-color:#F3B9A7;color:#D94F32;}

/* ---------- 小屏 ---------- */
@media (max-width:760px){
  .lv-user-wrap{grid-template-columns:1fr;}
  .lv-side{position:static;}
  .lv-side nav{display:flex;overflow-x:auto;gap:4px;padding:8px;}
  .lv-side nav a{flex:0 0 auto;white-space:nowrap;padding:9px 12px;font-size:13px;}
  .lv-side nav a.on{box-shadow:inset 0 -2px 0 var(--brand);}
  .lv-side nav a svg{display:none;}
  .lv-side-out{padding:8px 10px;}
  .lv-hero{padding:44px 0 38px;}
  .lv-hero-txt h1{font-size:30px;}
  .lv-foot-grid{grid-template-columns:1fr;gap:24px;}
}

/* ---------- 首页 hero 图片轮播 ---------- */
.lv-hero{
  position:relative;
  overflow:hidden;
  min-height:500px;
  display:flex;
  align-items:center;
  padding:0;
  background:
    radial-gradient(760px 320px at 18% -4%, rgba(255,122,89,.16), transparent 70%),
    radial-gradient(640px 300px at 86% 6%, rgba(23,163,152,.12), transparent 70%),
    linear-gradient(180deg,#FFFDF8,#FBF3E4);
  border-bottom-color:var(--line);
}
.lv-hero-bg{position:absolute;inset:0;z-index:0;background:#F7EDDC;}
.lv-hero-slide{
  position:absolute;inset:0;
  background-size:auto 112%;
  background-position:right center;
  background-repeat:no-repeat;
  opacity:0;
  transform:scale(1.02);
  transition:opacity 1s ease,transform 7s linear;
  will-change:opacity,transform;
}
.lv-hero-slide.on{opacity:1;transform:scale(1);}
.lv-hero-veil{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,
    rgba(255,253,248,.95) 0%,
    rgba(255,253,248,.82) 32%,
    rgba(255,253,248,.24) 60%,
    rgba(255,253,248,.04) 100%);
}
.lv-hero-in{position:relative;z-index:2;padding-top:72px;padding-bottom:72px;}
.lv-hero-txt{max-width:580px;}
.lv-hero-txt h1{font-size:46px;}
.lv-hero-dots{
  position:absolute;right:6%;bottom:28px;z-index:4;
  display:flex;align-items:center;gap:8px;
}
.lv-hero-dots button{
  width:9px;height:9px;padding:0;border-radius:50%;
  border:1px solid rgba(36,31,26,.22);
  background:rgba(255,253,248,.72);
  cursor:pointer;
  transition:width .2s ease,background .2s ease,border-color .2s ease;
}
.lv-hero-dots button.on{
  width:26px;border-radius:999px;
  background:var(--brand);border-color:var(--brand);
}

@media (max-width:900px){
  .lv-hero{min-height:450px;}
  .lv-hero-txt h1{font-size:36px;}
}
@media (max-width:760px){
  .lv-hero{min-height:420px;padding:0;}
  .lv-hero-veil{
    background:linear-gradient(180deg,
      rgba(255,253,248,.96) 0%,
      rgba(255,253,248,.86) 52%,
      rgba(255,253,248,.66) 100%);
  }
  .lv-hero-in{padding-top:52px;padding-bottom:62px;}
  .lv-hero-txt h1{font-size:29px;}
  .lv-hero-slide{background-size:cover;background-position:center 32%;}
  .lv-hero-dots{right:50%;transform:translateX(50%);bottom:20px;}
}