
/* ============================================================
   一号玫瑰 · 主样式（无衬线 / 沉浸式 / 与迪士尼区分）
   ============================================================ */

:root{
  --rose-big: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300' viewBox='0 0 300 300'><g fill='none' stroke='%23D9667A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M150 78c-14 0-25 10-25 22 0 12 9.6 21.4 21.4 21.4 10.2 0 18.4-7.4 18.4-16.8 0-8-6.4-14.4-14.4-14.4-6.4 0-11.4 4.6-11.4 10.4 0 5 3.8 9 8.6 9'/><path d='M150 78c-22.4 0-40.6 16-40.6 36 0 19 15 34.4 33.8 37.4'/><path d='M150 78c22.4 0 40.6 16 40.6 36 0 19-15 34.4-33.8 37.4'/><path d='M150 151.4v44'/><path d='M150 170c-13.6 0-24.6-8.4-28.2-19.4M150 184c-15 0-27.6-9-31.2-21.6'/><path d='M150 170c13.6 0 24.6-8.4 28.2-19.4M150 184c15 0 27.6-9 31.2-21.6'/></g><g fill='none' stroke='%23D9667A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' opacity='.7'><path d='M232 96c-8 0-14.4 5.6-14.4 12.6 0 6.8 5.6 12.2 12.4 12.2 6 0 10.6-4.2 10.6-9.6 0-4.6-3.6-8.2-8.2-8.2-3.6 0-6.4 2.6-6.4 5.8 0 2.8 2 5 4.8 5'/><path d='M232 96c-12.8 0-23.2 9.2-23.2 20.6 0 10.8 8.6 19.6 19.4 21.4'/><path d='M232 96c12.8 0 23.2 9.2 23.2 20.6 0 10.8-8.6 19.6-19.4 21.4'/><path d='M232 138v22'/></g></svg>");
  --bg:#0B0507;
  --bg-2:#150A0E;
  --card:#1A0D11;
  --ink:#F6EEEA;
  --ink-2:#B9A8A3;
  --ink-3:#6E5A56;
  --gold:#D9B67A;
  --gold-2:#F0D9AC;
  --rose:#A8354A;
  --rose-2:#D14A62;
  --line:rgba(217,182,122,.14);
  --line-2:rgba(255,255,255,.055);
  --tier-gj:#D9B67A;
  --tier-zj:#AFB2B8;
  --tier-cj:#C0455A;
  /* 无衬线，不走迪士尼的宋体路线 */
  --font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei",
          "HarmonyOS Sans SC", "Noto Sans SC", sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html,body{height:auto!important}

body{
  margin:0;
  font-family:var(--font);
  background:
    radial-gradient(140% 42% at 50% -4%, rgba(168,53,74,.30) 0%, rgba(168,53,74,.07) 42%, transparent 72%),
    radial-gradient(90% 30% at 50% 100%, rgba(168,53,74,.14) 0%, transparent 70%),
    var(--bg);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  padding-bottom:24px;
}

/* 顶部细纹理 */
body::before{
  content:"";position:fixed;left:0;right:0;top:0;height:240px;z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 12%, rgba(209,74,98,.16) 0%, transparent 38%),
    radial-gradient(circle at 82% 8%, rgba(168,53,74,.14) 0%, transparent 40%);
  filter:blur(28px);
}

/* ============ 顶部品牌 ============ */
.hero{
  position:relative;
  min-height:50vh;
  padding:calc(70px + env(safe-area-inset-top,0px)) 26px 74px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:
    radial-gradient(78% 58% at 50% 6%, rgba(168,53,74,.3) 0%, rgba(120,30,45,.08) 46%, transparent 74%);
}
.hero-top{display:none}

.rose-logo{width:52px;height:52px;margin:0 auto 12px;opacity:.95}
.rose-logo svg{width:100%;height:100%;filter:drop-shadow(0 3px 12px rgba(217,182,122,.32))}

.rose-name{
  font-family:var(--font);
  font-size:37px;font-weight:700;letter-spacing:-.01em;text-indent:0;
  margin:0 0 10px;line-height:1.16;
  background:linear-gradient(172deg,#FBEFD6 0%, #E3C48D 38%, #C69E5C 68%, #9B7640 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.rose-en{
  font-size:10px;font-weight:600;letter-spacing:.2em;text-indent:.2em;
  color:rgba(217,182,122,.5);margin-bottom:14px;
}
.rose-slogan{
  font-size:13px;letter-spacing:.05em;font-weight:400;color:var(--ink-2);margin:0;
}

/* ============ 公告 ============ */
.notice{
  position:relative;z-index:1;
  display:flex;align-items:center;gap:11px;
  margin:0 18px 13px;padding:9px 13px;
  background:rgba(255,255,255,.028);
  border:1px solid var(--line-2);border-radius:9px;
  overflow:hidden;
}
.ntag{
  display:flex;align-items:center;gap:5px;flex-shrink:0;
  font-size:11px;color:var(--rose-2);letter-spacing:.06em;
  padding-right:11px;border-right:1px solid var(--line-2);
  font-weight:500;
}
.ntag i{width:5px;height:5px;border-radius:50%;background:var(--rose-2);display:block;
  box-shadow:0 0 6px rgba(209,74,98,.8)}
.notice .nwrap{flex:1;overflow:hidden;min-width:0}
.notice .track{
  display:flex;gap:0;white-space:nowrap;font-size:11.5px;color:var(--ink-2);
  animation:nscroll 24s linear infinite;
}
.notice .track span{padding-right:48px}
@keyframes nscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============ 搜索（常显） ============ */
.search-box{
  position:relative;z-index:1;
  display:flex;align-items:center;gap:10px;
  margin:0 18px 13px;padding:0 14px;height:42px;
  background:rgba(255,255,255,.035);
  border:1px solid var(--line-2);border-radius:10px;
  transition:border-color .22s;
}
.search-box:focus-within{border-color:rgba(217,182,122,.34)}
.search-box svg{
  width:16px;height:16px;flex-shrink:0;
  fill:none;stroke:var(--ink-3);stroke-width:1.8;stroke-linecap:round;
}
.search-box input{
  flex:1;border:0;background:transparent;outline:0;
  color:var(--ink);font-size:13.5px;font-family:var(--font);min-width:0;
  letter-spacing:.02em;
}
.search-box input::placeholder{color:var(--ink-3)}
.search-cancel{display:none}

/* ============ 分类（胶囊，常显） ============ */
.tabs-wrap{
  position:relative;z-index:1;
  padding:0 0 15px;
}
.tabs{
  display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;
  padding:0 18px;
  -webkit-overflow-scrolling:touch;
}
.tabs::-webkit-scrollbar{display:none}
.tabs > *{
  flex:0 0 auto;padding:7px 16px;border-radius:999px;
  font-size:13.5px;letter-spacing:0;white-space:nowrap;
  background:rgba(255,255,255,.045);
  border:1px solid var(--line-2);
  color:var(--ink-2);transition:all .2s;cursor:pointer;
  font-family:var(--font);
}
.tabs > *.on{
  background:linear-gradient(135deg,#F0D9AC 0%, #D9B67A 52%, #B08E4E 100%);
  border-color:transparent;color:#1A0E04;font-weight:600;
  box-shadow:0 3px 14px rgba(217,182,122,.3);
}
.tabs i,.tabs b{
  font-style:normal;font-weight:inherit;opacity:.58;margin-left:3px;font-size:11px;
}
.tabs > *.on i,.tabs > *.on b{opacity:.72}
.tabs-more{display:none}

/* ============ 卡片 ============ */
.grid{
  position:relative;z-index:1;
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:10px;padding:0 18px 18px;
  background:transparent;
}
.card{
  position:relative;display:block;overflow:hidden;
  border-radius:12px;
  background:var(--card);
  text-decoration:none;color:inherit;
  box-shadow:0 2px 14px rgba(0,0,0,.42);
  animation:riseIn .4s cubic-bezier(.22,.61,.36,1) both;
  transition:transform .18s;
}
.card:active{transform:scale(.976)}
@keyframes riseIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.card .thumb{
  position:relative;width:100%;aspect-ratio:3/4.15;overflow:hidden;
  background:linear-gradient(165deg,#2E161C,#170A0D);
}
.card .thumb::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:62%;
  background:linear-gradient(180deg, transparent 0%, rgba(11,5,7,.55) 46%, rgba(11,5,7,.95) 100%);
  pointer-events:none;
}
.card .thumb img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.card .thumb .ph{position:absolute;inset:0}

/* 信息叠在图上 */
.card .meta{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  padding:0 11px 11px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:7px;
}
.card .meta-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.card .nm{
  font-family:var(--font);
  font-size:16px;font-weight:600;letter-spacing:0;color:#fff;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  text-shadow:0 1px 8px rgba(0,0,0,.5);
}
.card .no{
  font-size:10px;color:rgba(255,255,255,.46);letter-spacing:.01em;font-variant-numeric:tabular-nums;
  font-weight:400;
}
.card .meta-side{display:flex;align-items:center;gap:4px;flex-shrink:0;padding-bottom:1px}
.card .star{
  font-size:11.5px;color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums;
  display:flex;align-items:center;gap:2px;
  text-shadow:0 1px 6px rgba(0,0,0,.6);
}
.card .star i{font-style:normal}
.card .fav{
  width:22px;height:22px;padding:0;border:0;background:transparent;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
}
.card .fav svg{
  width:14px;height:14px;fill:none;stroke:rgba(255,255,255,.62);
  stroke-width:1.9;stroke-linejoin:round;transition:all .2s;
}
.card .fav.on svg{fill:var(--rose-2);stroke:var(--rose-2)}

/* 在岗（左上）：小圆点 + 文字 */
.card .corner{
  position:absolute;top:8px;left:8px;z-index:3;
  display:flex;align-items:center;gap:4px;
  padding:3.5px 8px;border-radius:999px;
  background:rgba(8,4,5,.55);backdrop-filter:blur(8px);
  font-size:10px;color:#7FE39C;letter-spacing:.01em;font-weight:500;
}
.card .corner::before{
  content:"";width:5px;height:5px;border-radius:50%;background:#4ADE80;display:block;
  box-shadow:0 0 6px rgba(74,222,128,.9);
}

/* 等级（右上）：实心小标签 */
.card .tier{
  position:absolute;top:8px;right:8px;z-index:3;
  padding:3.5px 9px;border-radius:5px;
  font-size:10px;letter-spacing:.04em;font-weight:600;
}
.card .tier-gj{background:linear-gradient(135deg,#F0D9AC,#D9B67A);color:#2A1A06}
.card .tier-zj{background:linear-gradient(135deg,#D6D8DC,#AFB2B8);color:#22242A}
.card .tier-cj{background:linear-gradient(135deg,#D6556C,#A8354A);color:#FFEBEF}

/* ============ 页脚 ============ */
.foot{
  text-align:center;font-size:10.5px;color:var(--ink-3);
  padding:6px 0 22px;letter-spacing:.01em;
}

.endtip{text-align:center;font-size:11px;color:var(--ink-3);padding:14px 0 6px;letter-spacing:.08em}
.sentinel{height:1px}

/* 隐藏迪士尼遗留的底部导航 */
.tabbar{display:none!important}

/* toast 兼容 */
#toast{
  font-family:var(--font);
}


/* ============================================================
   二号方案：全宽 banner + 单列沉浸卡片
   ============================================================ */

.hero{
  position:relative;
  min-height:38vh;
  display:flex;align-items:center;justify-content:center;
  padding:calc(30px + env(safe-area-inset-top,0px)) 24px 34px;
  overflow:hidden;
  background:
    radial-gradient(78% 58% at 50% 6%, rgba(168,53,74,.42) 0%, rgba(120,30,45,.16) 46%, transparent 74%),
    radial-gradient(50% 42% at 18% 82%, rgba(168,53,74,.14) 0%, transparent 70%),
    linear-gradient(180deg,#18080D 0%, #0B0507 100%);
}
.hero-bg{
  position:absolute;inset:0;pointer-events:none;
  background-image:
    radial-gradient(circle at 12% 22%, rgba(209,74,98,.16) 0%, transparent 26%),
    radial-gradient(circle at 88% 30%, rgba(168,53,74,.14) 0%, transparent 24%);
  filter:blur(18px);
}
.hero-inner{position:relative;text-align:center;width:100%}

.rose-logo{width:66px;height:66px;margin:0 auto 16px}
.rose-logo svg{width:100%;height:100%;filter:drop-shadow(0 4px 16px rgba(217,182,122,.4))}

.rose-name{
  font-size:37px;font-weight:700;letter-spacing:-.01em;text-indent:0;
  margin:0 0 12px;line-height:1.1;
  background:linear-gradient(174deg,#FDF2DC 0%, #E8CB96 40%, #C69E5C 70%, #9B7640 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.rose-en{
  font-size:10px;font-weight:600;letter-spacing:.2em;text-indent:.2em;
  color:rgba(217,182,122,.46);margin-bottom:18px;
}
.rose-slogan{
  font-size:13px;letter-spacing:.05em;font-weight:400;color:rgba(246,238,234,.62);margin:0;
}

/* 公告条彻底移除 */
.notice{display:none!important}

/* ============ 搜索压进 banner 下沿 ============ */
.search-box{
  margin:-18px 18px 14px;
  position:relative;z-index:4;
  height:44px;
  background:rgba(22,11,15,.94);
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.07);
  border-radius:12px;
  box-shadow:0 6px 24px rgba(0,0,0,.5);
}

/* ============ 标签：改成细下划线式 ============ */
.tabs-wrap{padding:0 0 16px}
.tabs{gap:22px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:0}
.tabs > *{
  padding:0 0 11px;border-radius:0;border:0;background:transparent;
  font-size:14px;letter-spacing:.04em;color:var(--ink-3);
  position:relative;transition:color .2s;
}
.tabs > *.on{
  background:none;box-shadow:none;color:var(--gold);font-weight:600;
  border:none;
}
.tabs > *.on::after{
  content:"";position:absolute;left:50%;bottom:-1px;transform:translateX(-50%);
  width:26px;height:2px;border-radius:1px;
  background:linear-gradient(90deg,#E8CB96,#C69E5C);
}
.tabs i,.tabs b{
  font-size:10.5px;opacity:.5;margin-left:4px;
}

/* ============ 卡片：单列大图 ============ */
.grid{
  grid-template-columns:repeat(2,1fr);
  gap:11px;
  padding:0 18px 24px;
}
.card{
  border-radius:16px;
  box-shadow:0 6px 28px rgba(0,0,0,.55);
}
.card .thumb{
  aspect-ratio:4/4.6;
}
.card .meta{padding:0 15px 15px}
.card .nm{font-size:19px;letter-spacing:.06em}
.card .no{font-size:11px;margin-top:3px}
.card .star{font-size:13px}
.card .fav{width:28px;height:28px}
.card .fav svg{width:18px;height:18px}
.card .corner{top:12px;left:12px;padding:5px 11px;font-size:11px}
.card .tier{top:12px;right:12px;padding:5px 11px;font-size:11px;border-radius:6px}
.card .thumb::after{height:55%}


/* ============================================================
   B 方案：1.5 列横滑大卡（预览用）
   ============================================================ */
body.b-mode .grid{
  display:flex;
  grid-template-columns:none;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  gap:12px;
  /* 左右各留 (屏宽 - 卡宽)/2，让任意一张卡都能停在正中 */
  padding:0 calc((100vw - 78vw) / 2) 22px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  scroll-behavior:smooth;
  /* 不设 scroll-padding，否则会和 padding 叠加，吸附点偏掉 */
}
body.b-mode .grid::-webkit-scrollbar{display:none}

body.b-mode .card{
  flex:0 0 auto;
  width:78vw;
  scroll-snap-align:center;
  scroll-snap-stop:always;
  border-radius:16px;
}
body.b-mode .card .thumb{aspect-ratio:3/4}
body.b-mode .card .nm{font-size:19px}
body.b-mode .card .no{font-size:11px}
body.b-mode .card .star{font-size:13px}
body.b-mode .card .meta{padding:0 15px 15px}
body.b-mode .card .corner{top:13px;left:13px;padding:5px 11px;font-size:11px}
body.b-mode .card .tier{top:13px;right:13px;padding:5px 11px;font-size:11px}
body.b-mode .card .fav{width:28px;height:28px}
body.b-mode .card .fav svg{width:18px;height:18px}

/* 横滑时的边缘渐隐提示 */
body.b-mode .grid{
  mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);
}



/* ============================================================
   2 列网格下的卡片尺寸（A 模式）
   ============================================================ */
body:not(.b-mode) .grid{
  gap:11px;
}
body:not(.b-mode) .card .thumb{
  aspect-ratio:3/4;
}
body:not(.b-mode) .card .meta{
  padding:0 10px 10px;
}
body:not(.b-mode) .card .nm{
  font-size:14.5px;letter-spacing:.04em;
}
body:not(.b-mode) .card .no{
  font-size:9.5px;
}
body:not(.b-mode) .card .star{
  font-size:10.5px;
}
body:not(.b-mode) .card .fav{
  width:20px;height:20px;
}
body:not(.b-mode) .card .fav svg{
  width:13px;height:13px;
}
body:not(.b-mode) .card .corner{
  top:7px;left:7px;padding:3px 7px;font-size:9.5px;
}
body:not(.b-mode) .card .tier{
  top:7px;right:7px;padding:3px 7px;font-size:9.5px;border-radius:4px;
}
body:not(.b-mode) .card{
  border-radius:11px;
}

/* ============================================================
   公告条（小号，压在搜索框上方）
   ============================================================ */
.notice.mini{
  display:flex !important;
  align-items:center;gap:9px;
  margin:0 18px 10px;padding:7px 12px;
  background:rgba(255,255,255,.028);
  border:1px solid rgba(255,255,255,.05);
  border-radius:8px;
  overflow:hidden;
  position:relative;z-index:1;
}
.notice.mini .ntag{
  display:flex;align-items:center;gap:4px;flex-shrink:0;
  font-size:10.5px;color:var(--rose-2);letter-spacing:.02em;
  padding-right:9px;border-right:1px solid rgba(255,255,255,.06);
  font-weight:500;
}
.notice.mini .ntag i{
  width:4px;height:4px;border-radius:50%;background:var(--rose-2);display:block;
  box-shadow:0 0 5px rgba(209,74,98,.8);
}
.notice.mini .nwrap{flex:1;overflow:hidden;min-width:0}
.notice.mini .track{
  display:flex;gap:0;white-space:nowrap;
  font-size:11.5px;color:rgba(246,238,234,.52);
  letter-spacing:0;
  animation:nscroll 26s linear infinite;
}
.notice.mini .track span{padding-right:52px}

/* ============================================================
   搜索框收窄
   ============================================================ */
.search-box{
  height:38px !important;
  margin:0 18px 12px !important;
  border-radius:9px !important;
}
.search-box input{
  font-size:12.5px !important;
}
.search-box svg{
  width:14px !important;height:14px !important;
}


/* ============================================================
   玫瑰壹号 · 密码门（统一尺寸 48px）
   ============================================================ */
html,body{height:100%;margin:0}
body{
  overflow:hidden;
  background:#0B0507;
}

.gate{
  position:relative;
  min-height:100vh;min-height:100dvh;
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  padding:40px 28px 100px;
  box-sizing:border-box;
}
.gate-glow{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(64% 42% at 50% 20%, rgba(168,53,74,.32) 0%, rgba(168,53,74,.07) 48%, transparent 74%),
    radial-gradient(44% 34% at 20% 86%, rgba(168,53,74,.12) 0%, transparent 70%),
    radial-gradient(44% 34% at 82% 82%, rgba(168,53,74,.09) 0%, transparent 70%);
}

.gate-frame{
  position:relative;z-index:2;
  width:100%;max-width:320px;
  text-align:center;
}

.gate-logo{
  width:62px;height:62px;margin:0 auto 18px;
}
.gate-logo svg{
  width:100%;height:100%;
  filter:drop-shadow(0 4px 18px rgba(217,182,122,.4));
}

.gate-mark{
  font-family:var(--font);
  font-size:30px;font-weight:700;
  letter-spacing:-.01em;text-indent:0;
  margin:0 0 9px;line-height:1.2;
  background:linear-gradient(174deg,#FDF2DC 0%, #E8CB96 40%, #C69E5C 70%, #9B7640 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.gate-en{
  font-size:9px;font-weight:600;letter-spacing:.2em;text-indent:.2em;
  color:rgba(217,182,122,.42);
  margin-bottom:12px;font-weight:500;
}
.gate-slogan{
  font-size:12.5px;letter-spacing:.04em;
  color:rgba(246,238,234,.48);
  margin:0 0 40px;
}

.gate-lock{
  font-size:11.5px;letter-spacing:.1em;
  color:#E08594;margin:0 0 14px;
  min-height:0;opacity:0;transition:opacity .2s;
}
.gate-lock.on{opacity:1;min-height:16px}

.gate-form{width:100%;margin:0}

.gate-err{
  font-size:11.5px;letter-spacing:.08em;
  color:#E08594;margin:0 0 10px;
  opacity:0;transition:opacity .2s;min-height:0;
}
.gate-err.on{opacity:1;min-height:15px}

/* 输入框：48px 高，和按钮严格一致 */
.gate .gate-field{
  position:relative;
  display:flex;align-items:center;
  width:100%;height:48px;
  margin:0 0 12px;
  box-sizing:border-box;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  overflow:hidden;
  transition:border-color .24s, background .24s;
}
.gate .gate-field:focus-within{
  border-color:rgba(217,182,122,.42);
  background:rgba(255,255,255,.06);
}
.gate .gate-field-icon{
  position:absolute;left:15px;top:50%;transform:translateY(-50%);
  width:16px;height:16px;
  fill:none;stroke:rgba(255,255,255,.3);
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
  transition:stroke .24s;pointer-events:none;
}
.gate .gate-field:focus-within .gate-field-icon{
  stroke:rgba(217,182,122,.7);
}
.gate .gate-input{
  flex:1;
  width:100%;
  /* 只占一行字的高度，由外层 flex 居中；撑满 48px 会让文字偏上 */
  height:22px !important;
  line-height:22px !important;
  margin:0 !important;
  /* 左右各 44px，内容区居中 = 框居中 */
  padding:0 44px !important;
  border:0 !important;border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
  color:var(--ink) !important;
  font-size:14.5px !important;
  font-family:var(--font) !important;
  letter-spacing:.04em !important;
  text-align:center !important;
  box-sizing:border-box;
  -webkit-appearance:none;
  vertical-align:middle;
}
.gate .gate-input::placeholder{
  color:rgba(255,255,255,.24) !important;
  letter-spacing:.04em !important;
  font-size:13.5px !important;
  text-align:center !important;
}

/* 按钮：同样 48px 高 */
.gate .gate-btn{
  display:block;
  width:100%;height:48px;
  margin:0;
  box-sizing:border-box;
  border:1px solid rgba(217,182,122,.5) !important;
  border-radius:12px !important;
  background:linear-gradient(135deg, rgba(240,217,172,.17) 0%, rgba(217,182,122,.10) 50%, rgba(168,133,63,.14) 100%) !important;
  color:#EBD4A6 !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  font-family:var(--font) !important;
  letter-spacing:.14em !important;
  text-indent:.14em !important;
  cursor:pointer;
  box-shadow:0 3px 18px rgba(217,182,122,.16), inset 0 1px 0 rgba(255,255,255,.07) !important;
  transition:all .2s;
}
.gate .gate-btn:active{transform:scale(.978)}
.gate .gate-btn[disabled]{opacity:.42;cursor:not-allowed}

.gate-foot{
  position:absolute;left:0;right:0;bottom:calc(26px + env(safe-area-inset-bottom,0px));
  z-index:2;text-align:center;
  font-size:10px;color:rgba(110,90,86,.8);letter-spacing:.03em;
}

/* 隐藏迪士尼遗留 */
.gate-orn,.gate-title,.gate-sub{display:none !important}


/* ============================================================
   首页标题呼吸感
   ============================================================ */
.rose-logo{width:74px;height:74px;margin:0 auto 22px}
.rose-logo svg{
  filter:drop-shadow(0 6px 24px rgba(217,182,122,.46));
}

.rose-name{
  font-size:42px !important;
  font-weight:700;
  letter-spacing:-.02em !important;
  text-indent:0 !important;
  line-height:1.5 !important;
  margin:0 0 6px !important;
  padding:6px 0;
}
.rose-en{
  font-size:10px !important;
  font-weight:600;
  letter-spacing:.26em !important;
  text-indent:.26em !important;
  margin:0 0 24px !important;
  color:rgba(217,182,122,.44) !important;
}
.rose-slogan{
  font-size:13.5px !important;
  letter-spacing:.06em !important;
  color:rgba(246,238,234,.58) !important;
  margin:0 0 6px !important;
  line-height:1.7;
}

/* hero 上下留白加大 */
.hero{
  min-height:44vh !important;
  padding:calc(46px + env(safe-area-inset-top,0px)) 24px 52px !important;
}

/* ============================================================
   密码门：标题标语放大，视觉冲击
   ============================================================ */
.gate .gate-logo{
  width:88px;height:88px;margin:0 auto 30px;
}
.gate .gate-logo svg{
  filter:drop-shadow(0 8px 30px rgba(217,182,122,.5));
}

.gate .gate-mark{
  font-size:48px !important;
  font-weight:700 !important;
  letter-spacing:-.03em !important;
  text-indent:0 !important;
  line-height:1.35 !important;
  margin:0 0 14px !important;
  padding:8px 0;
}
.gate .gate-en{
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.3em !important;
  text-indent:.3em !important;
  margin:0 0 30px !important;
  color:rgba(217,182,122,.46) !important;
}
.gate .gate-slogan{
  font-size:15.5px !important;
  letter-spacing:.08em !important;
  color:rgba(246,238,234,.6) !important;
  margin:0 0 56px !important;
  line-height:1.7;
}

/* 门页表单区宽度收一点，衬托大标题 */
.gate .gate-frame{max-width:326px !important}

/* ============================================================
   详情页底部操作：换掉迪士尼味道
   ============================================================ */
.vbar{
  gap:9px !important;
  padding:11px 15px calc(11px + env(safe-area-inset-bottom,0px)) !important;
}

.vbar-btn{
  height:46px !important;
  padding:0 13px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.07) !important;
  background:rgba(255,255,255,.028) !important;
  color:rgba(246,238,234,.62) !important;
  font-size:13px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  gap:4px !important;
}
.vbar-btn svg{
  width:14px !important;height:14px !important;
  stroke-width:2 !important;
  opacity:.7;
}

.vbar-want{
  height:46px !important;
  border-radius:12px !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  gap:6px !important;
}
.vbar-want svg{width:16px !important;height:16px !important;stroke-width:2}
.vbar-want b{
  font-weight:800 !important;
  font-variant-numeric:tabular-nums;
  letter-spacing:0 !important;
}

/* ============================================================
   大图查看器：换掉迪士尼的圆形 X 和页码
   ============================================================ */

/* 顶部栏 */
.lightbox .lb-head{
  padding:calc(14px + env(safe-area-inset-top,0px)) 16px 14px !important;
  background:linear-gradient(180deg, rgba(11,5,7,.72) 0%, transparent 100%) !important;
  align-items:center !important;
}

/* 页码：胶囊，金色描边，等宽数字 */
.lightbox #lbIdx,
.lightbox .lb-head > span{
  display:inline-flex !important;
  align-items:center !important;
  height:28px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  border:1px solid rgba(217,182,122,.24) !important;
  background:rgba(11,5,7,.5) !important;
  backdrop-filter:blur(10px);
  color:rgba(246,238,234,.72) !important;
  font-size:12px !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
  font-variant-numeric:tabular-nums;
}

/* X 按钮：方形圆角，金边，不用圆形 */
.lightbox .lb-close{
  width:34px !important;
  height:34px !important;
  border-radius:9px !important;
  border:1px solid rgba(217,182,122,.26) !important;
  background:rgba(11,5,7,.5) !important;
  backdrop-filter:blur(10px);
  color:rgba(246,238,234,.78) !important;
  font-size:14px !important;
  line-height:1 !important;
  display:grid !important;
  place-items:center !important;
  transition:all .2s;
}
.lightbox .lb-close:active{
  transform:scale(.94);
  background:rgba(217,182,122,.14) !important;
}

/* 底部关闭按钮 */
.lightbox .lb-close-bottom{
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.1) !important;
  background:rgba(255,255,255,.05) !important;
  backdrop-filter:blur(12px);
  color:rgba(246,238,234,.7) !important;
  font-size:12.5px !important;
  font-weight:500 !important;
  letter-spacing:.06em !important;
}
.lightbox .lb-close-bottom svg{
  width:15px !important;height:15px !important;
  stroke-width:1.9 !important;
}


/* ============================================================
   呼吸感 v2：靠 margin 造间距，而不是 line-height
   ============================================================ */

/* ---------- 首页 hero ---------- */
.hero{
  min-height:40vh !important;
  padding:calc(22px + env(safe-area-inset-top,0px)) 26px 50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.hero-inner{
  width:100%;
}

/* logo：上方大留白 */
.rose-logo{
  width:78px !important;
  height:78px !important;
  margin:0 auto 24px !important;
}

/* 主标题：行高收紧，靠 margin 撑间距 */
.rose-name{
  font-size:44px !important;
  font-weight:700 !important;
  letter-spacing:-.02em !important;
  text-indent:0 !important;
  line-height:1.14 !important;
  margin:0 0 20px !important;
  padding:0 !important;
}

/* 英文副标 */
.rose-en{
  font-size:10.5px !important;
  font-weight:600 !important;
  letter-spacing:.28em !important;
  text-indent:.28em !important;
  line-height:1 !important;
  margin:0 0 26px !important;
  color:rgba(217,182,122,.42) !important;
}

/* slogan：下方大留白，和搜索框拉开 */
.rose-slogan{
  font-size:14px !important;
  letter-spacing:.08em !important;
  line-height:1.75 !important;
  color:rgba(246,238,234,.56) !important;
  margin:0 !important;
}

/* 搜索框离 hero 再远一点 */
.search-box{
  margin:8px 18px 14px !important;
}
.notice.mini{
  margin:6px 18px 12px !important;
}

/* ---------- 密码门 ---------- */
.gate{
  padding:56px 30px 110px !important;
}

.gate .gate-logo{
  width:96px !important;
  height:96px !important;
  margin:0 auto 46px !important;
}

.gate .gate-mark{
  font-size:52px !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
  text-indent:0 !important;
  line-height:1.12 !important;
  margin:0 0 26px !important;
  padding:0 !important;
}

.gate .gate-en{
  font-size:11.5px !important;
  font-weight:600 !important;
  letter-spacing:.32em !important;
  text-indent:.32em !important;
  line-height:1 !important;
  margin:0 0 36px !important;
  color:rgba(217,182,122,.44) !important;
}

.gate .gate-slogan{
  font-size:16px !important;
  letter-spacing:.1em !important;
  line-height:1.8 !important;
  color:rgba(246,238,234,.58) !important;
  margin:0 0 86px !important;
}


/* ============================================================
   去金色化：交互元素统一玫瑰色系
   ============================================================ */
:root{
  --acc:#D9667A;          /* 主强调 玫瑰粉 */
  --acc-2:#EE9AAA;        /* 亮 */
  --acc-deep:#B03A50;     /* 深 */
  --acc-soft:rgba(217,102,122,.14);
  --acc-line:rgba(217,102,122,.42);
}

/* ---------- 1. 标签选中：金色渐变 → 玫瑰渐变 ---------- */
.tabs > *.on{
  background:linear-gradient(135deg, #E87F93 0%, #D9667A 45%, #B03A50 100%) !important;
  border-color:transparent !important;
  color:#FFFFFF !important;
  font-weight:600 !important;
  box-shadow:0 4px 16px rgba(185,58,80,.32) !important;
}
.tabs > *.on i,
.tabs > *.on b{
  opacity:.72 !important;
  color:#FFE8ED !important;
}

/* ---------- 2. 等级角标：香槟金 → 玫瑰金 ---------- */
.card .tier-gj{
  background:linear-gradient(135deg, #F2C4B0 0%, #E0A088 100%) !important;
  color:#3A1810 !important;
}
.card .tier-zj{
  background:linear-gradient(135deg, #DCDEE2 0%, #B8BBC2 100%) !important;
  color:#22242A !important;
}
.card .tier-cj{
  background:linear-gradient(135deg, #D9667A 0%, #A8354A 100%) !important;
  color:#FFEEF2 !important;
}

/* ---------- 3. 详情页等级徽章 ---------- */
.vtier.gj{
  background:linear-gradient(135deg, #F2C4B0 0%, #E0A088 100%) !important;
  color:#3A1810 !important;
}
.vtier.zj{
  background:linear-gradient(135deg, #DCDEE2 0%, #B8BBC2 100%) !important;
  color:#22242A !important;
}
.vtier.cj{
  background:linear-gradient(135deg, #D9667A 0%, #A8354A 100%) !important;
  color:#FFEEF2 !important;
}

/* ---------- 4. 星级数字：金色 → 玫瑰粉 ---------- */
.card .star{
  color:var(--acc-2) !important;
}
.vstar{
  color:var(--acc-2) !important;
}

/* ---------- 5. 搜索框聚焦 ---------- */
.search-box:focus-within{
  border-color:var(--acc-line) !important;
}

/* ---------- 6. 公告条：金色点 → 保持玫瑰红（本来就是） ---------- */
.notice.mini .ntag{
  color:var(--acc) !important;
}
.notice.mini .ntag i{
  background:var(--acc) !important;
  box-shadow:0 0 6px rgba(217,102,122,.75) !important;
}

/* ---------- 7. 详情页 tab 选中：金色 → 玫瑰粉 ---------- */
.dtab-i.on{
  color:var(--acc-2) !important;
}
.dtab-i.on::after{
  background:linear-gradient(90deg, #EE9AAA, #D9667A) !important;
}

/* ---------- 8. 详情页数据卡数字 ---------- */
.vfact b{
  color:var(--acc-2) !important;
}
.vfact{
  border-color:rgba(217,102,122,.14) !important;
}

/* ---------- 9. 大图查看器：金色边 → 玫瑰边 ---------- */
.lightbox #lbIdx,
.lightbox .lb-head > span{
  border-color:rgba(217,102,122,.28) !important;
  color:rgba(255,238,242,.76) !important;
}
.lightbox .lb-close{
  border-color:rgba(217,102,122,.28) !important;
  color:rgba(255,238,242,.8) !important;
}
.lightbox .lb-close:active{
  background:rgba(217,102,122,.16) !important;
}

/* ---------- 10. 密码门：按钮和聚焦改玫瑰 ---------- */
.gate .gate-btn{
  border-color:rgba(217,102,122,.5) !important;
  background:linear-gradient(135deg, rgba(232,127,147,.18) 0%, rgba(217,102,122,.11) 50%, rgba(176,58,80,.15) 100%) !important;
  color:#F5C6D0 !important;
  box-shadow:0 3px 18px rgba(185,58,80,.2), inset 0 1px 0 rgba(255,255,255,.07) !important;
}
.gate .gate-field:focus-within{
  border-color:rgba(217,102,122,.46) !important;
}
.gate .gate-field:focus-within .gate-field-icon{
  stroke:rgba(238,154,170,.8) !important;
}
.gate .gate-err,
.gate .gate-lock{
  color:#EE9AAA !important;
}

/* ---------- 11. 详情页底部按钮：玫瑰系 ---------- */
.vbar-btn{
  border-color:rgba(255,255,255,.07) !important;
  color:rgba(246,238,234,.6) !important;
}

/* ---------- 12. 今日在岗角标：绿点保留（语义色） ---------- */
.card .corner{
  color:#7FE39C !important;
}

/* ---------- 13. 空态 / 尾部提示 ---------- */
.endtip{
  color:rgba(217,102,122,.5) !important;
}

/* ---------- 14. 分页加载条 ---------- */
.load-bar,
.spinner{
  border-color:rgba(217,102,122,.3) !important;
}


/* ============================================================
   标签条：整块重写（覆盖下划线模式遗留）
   ============================================================ */
.tabs-wrap{
  padding:0 0 15px !important;
  border:0 !important;
}
.tabs{
  display:flex !important;
  gap:8px !important;
  overflow-x:auto !important;
  padding:0 18px !important;
  border-bottom:0 !important;
  scrollbar-width:none;
}
.tabs::-webkit-scrollbar{display:none}

.tabs > *{
  flex:0 0 auto !important;
  padding:8px 17px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.07) !important;
  background:rgba(255,255,255,.04) !important;
  font-size:13.5px !important;
  letter-spacing:0 !important;
  color:rgba(246,238,234,.56) !important;
  font-weight:400 !important;
  white-space:nowrap;
  cursor:pointer;
  transition:all .2s;
  box-shadow:none !important;
  position:static !important;
}

/* 选中：玫瑰渐变胶囊 */
.tabs > *.on{
  padding:8px 17px !important;
  border-radius:999px !important;
  border:1px solid transparent !important;
  background:linear-gradient(135deg, #E87F93 0%, #D9667A 45%, #B03A50 100%) !important;
  color:#FFFFFF !important;
  font-weight:600 !important;
  box-shadow:0 4px 16px rgba(185,58,80,.34) !important;
}

/* 去掉下划线的伪元素 */
.tabs > *.on::after{
  display:none !important;
  content:none !important;
}

/* 数字 */
.tabs i,
.tabs b{
  font-style:normal !important;
  font-weight:inherit !important;
  opacity:.5;
  margin-left:4px;
  font-size:11.5px !important;
}
.tabs > *.on i,
.tabs > *.on b{
  opacity:.78 !important;
  color:#FFE8ED !important;
}


/* ============================================================
   页脚：品牌收尾（首页 / 详情页）
   ============================================================ */
.foot,
.vfoot{
  text-align:center !important;
  padding:38px 0 30px !important;
  letter-spacing:0 !important;
}

.foot-rule,
.vfoot .foot-rule{
  width:28px;
  height:1px;
  margin:0 auto 18px;
  background:linear-gradient(90deg, transparent, rgba(217,102,122,.42), transparent);
}

.foot-en,
.vfoot .foot-en{
  font-size:8.5px !important;
  font-weight:600 !important;
  letter-spacing:.4em !important;
  text-indent:.4em !important;
  color:rgba(217,102,122,.34) !important;
  margin:0 0 10px;
  line-height:1;
}

.foot-copy,
.vfoot .foot-copy{
  font-size:10px !important;
  color:rgba(246,238,234,.2) !important;
  letter-spacing:.02em !important;
  line-height:1.6;
}

/* 详情页底栏是 fixed，页脚要留出空间 */
.vfoot{
  padding:34px 0 96px !important;
}

/* ============================================================
   门页页脚
   ============================================================ */
.gate-foot{
  position:absolute;
  left:0;right:0;
  bottom:calc(24px + env(safe-area-inset-bottom,0px));
  z-index:2;
  text-align:center;
  padding:0 !important;
}

.gate-foot-en{
  font-size:8px;
  font-weight:600;
  letter-spacing:.4em;
  text-indent:.4em;
  color:rgba(217,102,122,.3);
  margin:0 0 8px;
  line-height:1;
}

.gate-foot-copy{
  font-size:9.5px;
  color:rgba(246,238,234,.18);
  letter-spacing:.02em;
}


/* ============================================================
   页脚：干掉迪士尼的金色线，只留粉色
   ============================================================ */
.foot::before,
.vfoot::before{
  display:none !important;
  content:none !important;
}

/* 版权文字改玫瑰粉 */
.foot-copy,
.vfoot .foot-copy,
.gate-foot-copy{
  color:rgba(217,102,122,.46) !important;
}
.foot-copy span,
.vfoot .foot-copy span,
.gate-foot-copy span{
  color:rgba(217,102,122,.46) !important;
}

/* 英文行再亮一点 */
.foot-en,
.vfoot .foot-en{
  color:rgba(217,102,122,.46) !important;
}
.gate-foot-en{
  color:rgba(217,102,122,.42) !important;
}

/* ============================================================
   详情页：所有近黑 / 黑蓝 → 酒红
   ============================================================ */

/* 页面底 */
body.vpage{
  background:
    radial-gradient(120% 40% at 50% 0%, rgba(168,53,74,.26) 0%, transparent 62%),
    radial-gradient(80% 30% at 50% 100%, rgba(168,53,74,.1) 0%, transparent 70%),
    #140A0E !important;
}

/* 顶部大图占位底 */
.vhero{
  background:#1C0E13 !important;
}
.vhero-bg{
  background:linear-gradient(165deg,#331A22,#1C0E13) !important;
}

/* tab 条 */
.dtab{
  background:rgba(20,10,14,.95) !important;
  border-bottom-color:rgba(255,255,255,.05) !important;
}

/* 相册格子占位 */
.vphotos .p{
  background:linear-gradient(160deg,#331A22,#1C0E13) !important;
}

/* 视频容器 */
.vvideos .cell,
.vvideos video{
  background:#1A0D12 !important;
}

/* 好评格子 */
.vreviews .rv{
  background:linear-gradient(160deg,#331A22,#1C0E13) !important;
}

/* 底部操作栏 */
.vbar{
  background:rgba(18,9,12,.96) !important;
  border-top-color:rgba(217,102,122,.1) !important;
}

/* 返回按钮底 */
.vback{
  background:rgba(20,10,14,.55) !important;
}

/* 在岗胶囊 */
.vduty{
  background:rgba(20,10,14,.55) !important;
}

/* ============================================================
   大图查看器：黑蓝 → 酒红
   ============================================================ */
.lightbox{
  background:rgba(14,7,10,.97) !important;
}
.lb-slide{
  background:#160B0F !important;
}
.lb-head{
  background:linear-gradient(180deg, rgba(16,8,11,.8) 0%, transparent 100%) !important;
}
#lbIdx,
.lb-head > span{
  background:rgba(20,10,14,.55) !important;
}
.lb-close{
  background:rgba(20,10,14,.55) !important;
}
.lb-close-bottom{
  background:rgba(20,10,14,.6) !important;
  border-color:rgba(255,255,255,.09) !important;
}

/* ============================================================
   首页 / 门页 背景也补一层酒红底
   ============================================================ */
body{
  background-color:#12070A;
}
.gate{
  background:#12070A !important;
}

/* 卡片占位 */
.card .thumb{
  background:linear-gradient(165deg,#331A22,#1C0E13) !important;
}


/* ============================================================
   v3：细边框 + 发光 + 玫瑰底纹
   ============================================================ */

/* ---------- 玫瑰底纹（固定，不随滚动） ---------- */
body::after{
  content:"";
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:54vh;
  z-index:0;
  pointer-events:none;
  background-image:var(--rose-tile);
  background-size:230px 230px;
  background-repeat:repeat;
  opacity:.14;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.85) 0%, rgba(0,0,0,.45) 52%, transparent 100%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,.85) 0%, rgba(0,0,0,.45) 52%, transparent 100%);
}
/* 内容层要压在底纹之上 */
.hero, .notice, .search-box, .tabs-wrap, .grid, .foot{
  position:relative;
  z-index:1;
}

/* ---------- 卡片：细边框 ---------- */
.card{
  border:1px solid rgba(217,102,122,.16) !important;
  box-shadow:
    0 6px 26px rgba(0,0,0,.5),
    inset 0 1px 0 rgba(255,255,255,.045) !important;
  transition:border-color .24s, box-shadow .24s, transform .18s;
}
.card:active{
  border-color:rgba(217,102,122,.34) !important;
}

/* 横滑模式下边框更明显（大卡更吃得下） */
body.b-mode .card{
  border-color:rgba(217,102,122,.22) !important;
  box-shadow:
    0 10px 38px rgba(0,0,0,.58),
    0 0 0 1px rgba(217,102,122,.05),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
}

/* ---------- 标签：选中发光 ---------- */
.tabs > *.on{
  background:linear-gradient(135deg, #F095A6 0%, #D9667A 48%, #B03A50 100%) !important;
  color:#FFFFFF !important;
  font-weight:600 !important;
  box-shadow:
    0 0 0 1px rgba(255,190,205,.28),
    0 4px 18px rgba(217,102,122,.42),
    0 0 26px rgba(217,102,122,.34) !important;
}
/* 未选中的也带一点微光边 */
.tabs > *{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}

/* ---------- 详情页大图右侧：装饰玫瑰 ---------- */
.vhero::after{
  content:"";
  position:absolute;
  right:-42px;
  top:6%;
  width:190px;
  height:190px;
  z-index:2;
  pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'><g fill='none' stroke='%23D9667A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' opacity='1'><path d='M110 66c-9 0-16.5 6.4-16.5 14.4 0 7.8 6.4 14 14.2 14 6.8 0 12.2-4.8 12.2-11 0-5.2-4.2-9.4-9.4-9.4-4.2 0-7.4 3-7.4 6.8 0 3.2 2.4 5.8 5.6 5.8'/><path d='M110 66c-14.6 0-26.4 10.4-26.4 23.4 0 12.4 9.8 22.4 22 24.4'/><path d='M110 66c14.6 0 26.4 10.4 26.4 23.4 0 12.4-9.8 22.4-22 24.4'/><path d='M110 114v28'/><path d='M110 126c-8.8 0-16-5.4-18.4-12.6M110 135c-9.8 0-18-5.8-20.4-14'/><path d='M110 126c8.8 0 16-5.4 18.4-12.6M110 135c9.8 0 18-5.8 20.4-14'/></g><g fill='none' stroke='%23D9667A' stroke-width='1.4' stroke-linecap='round' opacity='.7' transform='translate(150 128) rotate(24) scale(.62)'><path d='M110 66c-9 0-16.5 6.4-16.5 14.4 0 7.8 6.4 14 14.2 14 6.8 0 12.2-4.8 12.2-11 0-5.2-4.2-9.4-9.4-9.4-4.2 0-7.4 3-7.4 6.8 0 3.2 2.4 5.8 5.6 5.8'/><path d='M110 66c-14.6 0-26.4 10.4-26.4 23.4 0 12.4 9.8 22.4 22 24.4'/><path d='M110 66c14.6 0 26.4 10.4 26.4 23.4 0 12.4-9.8 22.4-22 24.4'/><path d='M110 114v28'/></g></svg>");
  background-size:contain;
  background-repeat:no-repeat;
  opacity:.30;
  transform:rotate(14deg);
  filter:blur(.2px);
}

/* ---------- 详情页 tab 选中发光 ---------- */
.dtab-i.on{
  color:#F095A6 !important;
  text-shadow:0 0 14px rgba(217,102,122,.55);
}
.dtab-i.on::after{
  box-shadow:0 0 12px rgba(217,102,122,.7);
}

/* ---------- 数据卡细边框 ---------- */
.vfact{
  border:1px solid rgba(217,102,122,.16) !important;
  background:rgba(255,255,255,.03) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

/* ---------- 喜欢按钮发光 ---------- */
.vbar-want{
  box-shadow:
    0 2px 16px rgba(168,53,74,.3),
    0 0 22px rgba(217,102,122,.18),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
}

/* ---------- 相册格子细边 ---------- */
.vphotos .p{
  outline:1px solid rgba(217,102,122,.1);
  outline-offset:-1px;
}

/* ---------- 门页也加底纹 ---------- */
.gate::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:var(--rose-tile);
  background-size:210px 210px;
  opacity:.06;
}
.gate-frame{
  position:relative;
  z-index:2;
}
.gate .gate-foot{
  position:absolute !important;
  left:0;right:0;
  bottom:calc(26px + env(safe-area-inset-bottom,0px));
  z-index:2;
  padding:0 !important;
}


/* ============================================================
   hero 区大朵玫瑰（提升层次）
   ============================================================ */
.hero::after{
  content:"";
  position:absolute;
  right:-56px;
  top:6%;
  transform:rotate(16deg);
  width:min(72vw, 280px);
  height:min(72vw, 280px);
  z-index:0;
  pointer-events:none;
  background-image:var(--rose-big);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  opacity:.24;
  filter:drop-shadow(0 0 30px rgba(217,102,122,.24));
}
/* hero 内容压在玫瑰之上 */
.hero-inner{
  position:relative;
  z-index:2;
}


/* ============================================================
   搜索 / 标签 / 公告：实底，避免底纹穿透
   ============================================================ */
.search-box{
  background:rgba(18,7,10,.92) !important;
  backdrop-filter:blur(10px);
}
.tabs-wrap{
  background:linear-gradient(180deg, rgba(18,7,10,.94) 0%, rgba(18,7,10,.94) 100%) !important;
}
.tabs > *{
  background:rgba(255,255,255,.045) !important;
}
.tabs > *.on{
  background:linear-gradient(135deg, #F095A6 0%, #D9667A 48%, #B03A50 100%) !important;
}
.notice.mini{
  background:rgba(18,7,10,.9) !important;
}
