/* ==========================================================================
   月读评分 · 样式表（无第三方框架）
   ========================================================================== */

:root {
  --bg: #0f1218;
  --bg-soft: #151a23;
  --surface: #1a212c;
  --surface-2: #212a37;
  --border: #2b3648;
  --text: #e8ecf3;
  --text-dim: #9aa7ba;
  --brand: #ff7a9c;
  --brand-2: #6ea8ff;
  --ok: #3ecf8e;
  --warn: #ffb648;
  --err: #ff6b6b;
  --radius: 14px;
  --radius-sm: 9px;
  --shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  --wrap: 1180px;
}

@media (prefers-color-scheme: light) {
  :root {
    --bg: #f6f7f9;
    --bg-soft: #eef1f5;
    --surface: #ffffff;
    --surface-2: #f2f4f8;
    --border: #dfe4ec;
    --text: #1d2430;
    --text-dim: #6b7688;
    --shadow: 0 8px 24px rgba(24, 36, 58, 0.08);
  }
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 15px/1.7 "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", "Noto Sans SC", system-ui, -apple-system, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
a:hover { color: var(--brand); }
img { display: block; max-width: 100%; }
code, .code { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; }

.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 18px; }
.muted { color: var(--text-dim); }
.dot { opacity: .5; margin: 0 4px; }

/* ------------------------------- 顶栏 ------------------------------- */
.topbar {
  position: sticky; top: 0; z-index: 30;
  background: color-mix(in srgb, var(--bg) 82%, transparent);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--border);
}
.topbar-inner { display: flex; align-items: center; gap: 18px; height: 58px; }
.brand { display: flex; align-items: center; gap: 9px; font-weight: 700; letter-spacing: .3px; white-space: nowrap; }
.brand-mark { border-radius: 8px; }
.brand-name { font-size: 16px; }
.nav { display: flex; gap: 4px; margin-left: 10px; flex: 1; overflow-x: auto; scrollbar-width: none; }
.nav::-webkit-scrollbar { display: none; }
.nav-link {
  padding: 6px 12px; border-radius: 999px; color: var(--text-dim);
  font-size: 14px; transition: .16s; white-space: nowrap;
}
.nav-link:hover { background: var(--surface-2); color: var(--text); }
.nav-link.is-active { background: var(--surface-2); color: var(--text); font-weight: 600; }
.nav-right { display: flex; align-items: center; gap: 8px; }
.nav-user { display: flex; align-items: center; gap: 8px; }
.badge-admin {
  margin-left: 6px; font-size: 11px; padding: 1px 6px; border-radius: 6px;
  background: var(--brand); color: #fff; vertical-align: 1px;
}

/* ------------------------------- 主区 ------------------------------- */
.main { padding: 26px 18px 60px; min-height: 60vh; }
.footer { border-top: 1px solid var(--border); background: var(--bg-soft); }
.footer-inner { padding: 22px 18px; display: flex; flex-wrap: wrap; gap: 10px; justify-content: space-between; font-size: 13px; }
.footer-note { color: var(--text-dim); max-width: 620px; }
.footer-note a { color: var(--brand-2); }

/* 窄屏（手机）适配 */
@media (max-width: 640px) {
  .topbar-inner { gap: 10px; }
  .brand-name { display: none; }
  .nav { margin-left: 0; }
  .nav-link { padding: 6px 9px; font-size: 13px; }
  .nav-right { margin-left: auto; }
  .main { padding: 18px 14px 44px; }
  .grid { gap: 12px; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
  .panel { padding: 14px; }
  .stat-value { font-size: 19px; }
  .hero { padding: 22px 18px; }
  .cover-sm { width: 78px; height: 60px; flex: 0 0 78px; }
}

/* ------------------------------- 通用件 ------------------------------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 8px 15px; border-radius: 10px; border: 1px solid var(--border);
  background: var(--surface-2); color: var(--text); font-size: 14px; font-family: inherit;
  cursor: pointer; transition: .16s; white-space: nowrap;
}
.btn:hover { border-color: var(--brand); color: var(--brand); }
.btn-primary { background: linear-gradient(135deg, var(--brand), #ff9a7a); border-color: transparent; color: #fff; font-weight: 600; }
.btn-primary:hover { filter: brightness(1.06); color: #fff; }
.btn-ghost { background: transparent; }
.btn-danger { background: transparent; border-color: color-mix(in srgb, var(--err) 55%, var(--border)); color: var(--err); }
.btn-danger:hover { border-color: var(--err); color: var(--err); }
.btn-sm { padding: 5px 10px; font-size: 13px; }
.btn-block { width: 100%; }
.inline-form { display: inline; }
.inline-form-row { display: flex; gap: 10px; flex-wrap: wrap; }
.inline-form-row .input { flex: 1; min-width: 200px; }

.input {
  width: 100%; padding: 9px 12px; border-radius: 10px;
  border: 1px solid var(--border); background: var(--surface); color: var(--text);
  font: inherit; transition: .16s;
}
.input:focus { outline: none; border-color: var(--brand-2); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand-2) 22%, transparent); }
.textarea { resize: vertical; line-height: 1.7; }
select.input { cursor: pointer; }

.flash {
  padding: 10px 14px; border-radius: var(--radius-sm); margin-bottom: 16px;
  border: 1px solid var(--border); background: var(--surface-2); font-size: 14px;
  transition: opacity .6s, transform .6s;
}
.flash-ok { border-color: color-mix(in srgb, var(--ok) 50%, var(--border)); color: var(--ok); }
.flash-error { border-color: color-mix(in srgb, var(--err) 50%, var(--border)); color: var(--err); }
.flash-fade { opacity: 0; transform: translateY(-6px); }

.panel {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius); padding: 18px; margin-bottom: 18px;
}
.panel-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.panel-head h2 { font-size: 16px; margin: 0; }
.panel-more { font-size: 13px; color: var(--text-dim); }
.panel-more:hover { color: var(--brand); }

.empty { padding: 26px; text-align: center; color: var(--text-dim); border: 1px dashed var(--border); border-radius: var(--radius-sm); }
.page-head { margin-bottom: 20px; }
.page-head h1 { font-size: 26px; margin: 0 0 12px; }
.page-hint { color: var(--text-dim); font-size: 13px; margin: 10px 0 0; }
.two-col { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 18px; align-items: start; }
@media (max-width: 900px) { .two-col { grid-template-columns: 1fr; } }

/* ------------------------------- 首页 ------------------------------- */
.hero {
  padding: 34px 26px; border-radius: 20px; margin-bottom: 22px;
  background:
    radial-gradient(900px 300px at 8% -20%, color-mix(in srgb, var(--brand) 26%, transparent), transparent),
    radial-gradient(700px 260px at 92% 0%, color-mix(in srgb, var(--brand-2) 22%, transparent), transparent),
    var(--surface);
  border: 1px solid var(--border);
}
.hero h1 { margin: 0 0 10px; font-size: clamp(22px, 3vw, 32px); line-height: 1.35; }
.hero-sub { color: var(--text-dim); max-width: 720px; margin: 0 0 18px; }
.hero-actions { display: flex; gap: 10px; flex-wrap: wrap; }

.stats-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 12px; margin-bottom: 20px; }
.stat-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 14px; }
.stat-value { font-size: 22px; font-weight: 700; }
.stat-label { color: var(--text-dim); font-size: 13px; }
.stat-hint { font-size: 12px; color: var(--text-dim); }

/* ------------------------------- 作品卡 ------------------------------- */
.grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); }
.grid-4 { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.game-card {
  display: flex; flex-direction: column; background: var(--surface);
  border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden;
  transition: .18s;
}
.game-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--brand) 55%, var(--border)); box-shadow: var(--shadow); }
/* 月幕的图片有横幅也有竖版封面，统一 4:3 + contain，保证作品名不被裁掉 */
.cover-box { position: relative; aspect-ratio: 4 / 3; background: var(--surface-2); overflow: hidden; }
.cover { width: 100%; height: 100%; object-fit: contain; }
.cover-empty { display: flex; align-items: center; justify-content: center; height: 100%; color: var(--text-dim); font-size: 13px; background: var(--surface-2); }
.cover-empty.big { aspect-ratio: 3 / 4; border-radius: var(--radius); width: 100%; }
.cover-sm { width: 96px; height: 72px; flex: 0 0 96px; border-radius: var(--radius-sm); }
.img-failed { opacity: 0; }
.card-score {
  position: absolute; left: 8px; bottom: 8px; padding: 2px 8px; border-radius: 8px;
  font-weight: 700; font-size: 13px; background: rgba(12, 16, 22, .82); color: #fff;
  backdrop-filter: blur(4px);
}
.tag { position: absolute; top: 8px; right: 8px; font-size: 11px; padding: 2px 6px; border-radius: 6px; background: rgba(12, 16, 22, .82); color: #fff; }
.tag-cn { right: auto; left: 8px; background: rgba(62, 207, 142, .92); }
.tag-r18 { background: rgba(255, 107, 107, .92); }
.card-body { padding: 10px 12px 12px; display: flex; flex-direction: column; gap: 3px; }
.card-title {
  font-weight: 600; font-size: 14px; line-height: 1.45;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.card-sub { font-size: 12px; color: var(--text-dim); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card-meta { font-size: 12px; color: var(--text-dim); display: flex; flex-wrap: wrap; gap: 2px; }

/* 分数色阶 */
.s10, .s9 { color: #ff6f91; }
.s8 { color: #ff9a5c; }
.s7 { color: #ffc861; }
.s6 { color: #9ed36a; }
.s5 { color: #63c9c2; }
.s4 { color: #6ea8ff; }
.s3, .s2, .s1 { color: #9aa7ba; }
.s0 { color: var(--text-dim); }
.bar-fill.s10, .bar-fill.s9 { background: #ff6f91; }
.bar-fill.s8 { background: #ff9a5c; }
.bar-fill.s7 { background: #ffc861; }
.bar-fill.s6 { background: #9ed36a; }
.bar-fill.s5 { background: #63c9c2; }
.bar-fill.s4 { background: #6ea8ff; }
.bar-fill.s3, .bar-fill.s2, .bar-fill.s1 { background: #7d8798; }

.mini-score { font-weight: 700; }
.score-pill { font-weight: 700; }

/* ------------------------------- 作品详情 ------------------------------- */
.game-head { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 22px; margin-bottom: 20px; }
@media (max-width: 780px) { .game-head { grid-template-columns: 1fr; } }
.game-cover img { width: 100%; border-radius: var(--radius); border: 1px solid var(--border); }
.game-intro h1 { margin: 0 0 6px; font-size: clamp(20px, 2.6vw, 28px); }
.alias { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.alias-item { font-size: 12px; color: var(--text-dim); background: var(--surface-2); border-radius: 6px; padding: 2px 7px; }
.game-score-block { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 16px; align-items: center; margin: 14px 0 16px; }
@media (max-width: 560px) { .game-score-block { grid-template-columns: 1fr; } }
.big-score strong { display: block; font-size: 34px; line-height: 1.1; }
.big-score span { font-size: 12px; color: var(--text-dim); }
.bars { display: flex; flex-direction: column; gap: 3px; }
.bar-row { display: grid; grid-template-columns: 20px minmax(0, 1fr) 30px; align-items: center; gap: 8px; font-size: 12px; color: var(--text-dim); }
.bar-track { height: 8px; background: var(--surface-2); border-radius: 99px; overflow: hidden; }
.bar-fill { display: block; height: 100%; border-radius: 99px; min-width: 2px; }
.bar-count { text-align: right; }

.meta-list { display: flex; flex-direction: column; gap: 6px; font-size: 13.5px; }
.meta-row { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 10px; }
.meta-key { color: var(--text-dim); }
.link-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.link-chip {
  font-size: 12.5px; padding: 3px 9px; border-radius: 999px;
  border: 1px solid var(--border); background: var(--surface-2); color: var(--text-dim);
}
.link-chip:hover { color: var(--brand); border-color: var(--brand); }
.report-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 12px; font-size: 12.5px; }
.introduction { line-height: 1.9; white-space: pre-wrap; }

.rate-form, .review-form, .checkin-form { display: flex; flex-direction: column; gap: 12px; }
.rate-row { display: flex; flex-direction: column; gap: 8px; }
.rate-stars { display: flex; gap: 6px; flex-wrap: wrap; }
.star {
  width: 38px; height: 38px; border-radius: 10px; border: 1px solid var(--border);
  background: var(--surface-2); color: var(--text-dim); font-weight: 700; font-size: 15px;
  cursor: pointer; transition: .14s; font-family: inherit;
}
.star.hover, .star.on { background: linear-gradient(135deg, var(--brand), #ff9a7a); border-color: transparent; color: #fff; transform: translateY(-1px); }
.rate-hint { font-size: 13px; color: var(--text-dim); }
.form-actions { display: flex; gap: 10px; flex-wrap: wrap; }

.checkin-buttons { display: flex; gap: 8px; flex-wrap: wrap; }
.btn-status.is-on {
  border-color: var(--brand-2); color: var(--brand-2); font-weight: 700;
  background: color-mix(in srgb, var(--brand-2) 16%, transparent);
}
.chip { display: inline-block; font-size: 12px; padding: 1px 8px; border-radius: 999px; background: var(--surface-2); border: 1px solid var(--border); color: var(--text-dim); }
.chip-wish { color: #6ea8ff; border-color: color-mix(in srgb, #6ea8ff 45%, var(--border)); }
.chip-doing { color: #ffc861; border-color: color-mix(in srgb, #ffc861 45%, var(--border)); }
.chip-done { color: #3ecf8e; border-color: color-mix(in srgb, #3ecf8e 45%, var(--border)); }
.chip-dropped { color: #9aa7ba; }
.checkin-history { list-style: none; margin: 12px 0 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 13px; }

.review { border-top: 1px solid var(--border); padding: 14px 0; }
.review:first-of-type { border-top: none; }
.review-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; }
.review-title { font-size: 15px; margin: 6px 0 0; }
.review-body { margin-top: 8px; line-height: 1.85; }
.user-link { font-weight: 600; }
.user-link:hover { color: var(--brand); }

.cast { display: flex; gap: 10px; align-items: center; padding: 7px 0; border-bottom: 1px dashed var(--border); }
.cast:last-child { border-bottom: none; }
.cast-img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; background: var(--surface-2); }
.cast-img-empty { display: inline-block; }
.cast-name { font-size: 13.5px; }
.cast-cv { font-size: 12px; color: var(--text-dim); }
.release-list { display: flex; flex-direction: column; gap: 8px; }
.release { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; flex-wrap: wrap; }
.release-name { font-weight: 600; }
.mini-list { display: flex; flex-direction: column; gap: 8px; }
.mini-item { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; padding: 6px 8px; border-radius: 8px; background: var(--surface-2); }
.mini-item:hover { color: var(--brand); }
.rater-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 13.5px; }

/* ------------------------------- 列表 / 卡片流 ------------------------------- */
.collection-item { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px dashed var(--border); }
.collection-item:last-child { border-bottom: none; }
.collection-body { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 4px; }
.collection-title { font-weight: 600; }
.collection-meta { display: flex; gap: 10px; flex-wrap: wrap; font-size: 12.5px; color: var(--text-dim); align-items: center; }
.collection-review { margin: 4px 0 0; color: var(--text-dim); font-size: 13.5px; }

.activity-list, .news-list, .checkin-feed, .user-list { list-style: none; margin: 0; padding: 0; }
.activity { display: flex; gap: 10px; padding: 8px 0; border-bottom: 1px dashed var(--border); font-size: 13.5px; }
.activity:last-child { border-bottom: none; }
.activity-time { color: var(--text-dim); font-size: 12px; flex: 0 0 62px; }
.news-item { display: flex; flex-direction: column; gap: 2px; padding: 8px 0; border-bottom: 1px dashed var(--border); font-size: 13.5px; }
.news-item:last-child { border-bottom: none; }
.news-item a { line-height: 1.6; }
.checkin-row, .user-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 8px 0; border-bottom: 1px dashed var(--border); font-size: 13.5px; }
.checkin-row:last-child, .user-row:last-child { border-bottom: none; }
.status-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }

/* ------------------------------- 表格 / 排行 ------------------------------- */
.rank-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.rank-table th, .rank-table td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--border); vertical-align: middle; }
.rank-table th { color: var(--text-dim); font-weight: 600; font-size: 13px; }
.rank-no { width: 42px; color: var(--text-dim); font-weight: 700; }
.rank-game { display: flex; gap: 12px; align-items: center; }
.rank-cover { width: 56px; height: 42px; flex: 0 0 56px; border-radius: 8px; overflow: hidden; background: var(--surface-2); }
.rank-cover img { width: 100%; height: 100%; object-fit: contain; }
.rank-title { font-weight: 600; }

/* ------------------------------- 搜索 / 分页 ------------------------------- */
.search-form { display: flex; gap: 10px; flex-wrap: wrap; }
.search-form .input { flex: 1; min-width: 240px; }
.pager { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 18px; font-size: 13px; color: var(--text-dim); }
.page-btn { padding: 6px 14px; border: 1px solid var(--border); border-radius: 999px; background: var(--surface-2); }
.page-btn.is-disabled { opacity: .45; }
.tabs { display: flex; gap: 8px; }
.tab { padding: 5px 12px; border-radius: 999px; border: 1px solid var(--border); font-size: 13px; color: var(--text-dim); }
.tab.is-active { background: var(--surface-2); color: var(--text); font-weight: 600; }

/* ------------------------------- 账号 / 表单 ------------------------------- */
.auth-card {
  max-width: 440px; margin: 30px auto; background: var(--surface);
  border: 1px solid var(--border); border-radius: 18px; padding: 28px;
}
.auth-card h1 { margin: 0 0 6px; font-size: 22px; }
.stack-form { display: flex; flex-direction: column; gap: 14px; margin-top: 18px; }
.field { display: flex; flex-direction: column; gap: 6px; }
.field label { font-size: 13px; color: var(--text-dim); }
.auth-switch { margin: 16px 0 0; font-size: 13px; color: var(--text-dim); }
.profile-head { display: flex; align-items: center; gap: 16px; }
.avatar {
  width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center;
  font-size: 24px; font-weight: 700; color: #fff;
  background: linear-gradient(135deg, var(--brand), var(--brand-2));
}
.profile-edit .field { max-width: 520px; }
.log {
  background: var(--bg-soft); border: 1px solid var(--border); border-radius: var(--radius-sm);
  padding: 12px; font-size: 13px; white-space: pre-wrap; margin-top: 14px; overflow-x: auto;
}
.error-page { text-align: center; padding: 60px 0; }
.error-page h1 { font-size: 46px; margin: 0 0 8px; color: var(--brand); }

/* 月读 · 日常记录的清爽界面与年度档案的舞台感 */
:root {
  color-scheme: light;
  --bg:#fbfbfd; --bg-soft:#f5f5f7; --surface:#fff; --surface-2:#f5f5f7;
  --border:#e8e8ec; --text:#1d1d1f; --text-dim:#6e6e73;
  --brand:#b93160; --brand-2:#0066cc; --ok:#24775a; --warn:#99691d; --err:#bb3540;
  --radius:20px; --radius-sm:12px; --shadow:0 16px 45px #20202a0b; --wrap:1240px;
}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; font-size:14px; letter-spacing:.01em;}
button,input,textarea {font-family:inherit;}
button:focus-visible,a:focus-visible {outline:3px solid #0066cc; outline-offset:5px;}
html {scroll-padding-top:90px;}
.skip-link {position:fixed; top:-70px; left:16px; z-index:100; background:#fff; padding:12px 22px; border-radius:12px;}
.skip-link:focus {top:12px;}
.reading-progress {position:fixed; top:0; left:0; height:2px; background:var(--brand); width:100%; transform:scaleX(0); transform-origin:left; z-index:100;}
.topbar {background:#fbfbfde8; border-color:#e8e8ec90; backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);}
.topbar-inner {height:68px; gap:26px;}
.brand-name {font-size:17px; font-weight:650; letter-spacing:-.5px;}
.brand-mark {width:25px; height:25px;}
.nav {justify-content:center; margin:0; gap:14px;}
.nav-link {padding:8px 5px; font-size:12px; border-radius:0; color:#5b5b60;}
.nav-link:hover,.nav-link.is-active {background:none; color:#b93160;}
.nav-link.is-active {font-weight:650;}
.nav-user {gap:12px;}
.nav-search {display:flex; padding:8px;}
.nav-right {gap:12px;}
.nav-right .btn-primary {background:#1d1d1f; border-radius:30px; padding:6px 14px; font-size:12px;}
.menu-toggle {display:none; background:none; border:0; padding:12px; width:40px; height:40px; cursor:pointer;}
.menu-toggle span {display:block; height:1.5px; width:19px; background:currentColor; margin:5px 0; transition:transform .2s;}
.main {padding-top:48px; padding-bottom:80px;}
.home-page .main,.annual-page .main,.battle-page .main {padding-top:0;}
.footer-inner {padding-top:32px; padding-bottom:32px; gap:32px; font-size:12px;}
.footer-inner strong {font-size:16px;}
.footer-tagline,.preview-note {display:block; color:var(--text-dim); margin-top:7px;}
.preview-note {font-size:11px; opacity:.8;}
.footer-note {max-width:440px;}
.btn {border-radius:999px; padding:11px 23px; transition:background .2s,transform .2s,box-shadow .2s,color .2s;}
.btn-primary {background:#b93160; font-weight:500;}
.btn-primary:hover {background:#a12854; filter:none; transform:translateY(-2px); box-shadow:0 6px 18px #b9316020;}
.btn-light {color:#242426; background:#fff; border-color:#fff;}
.btn-light:hover {background:#f5e7ed; color:#8c254b; border-color:#f5e7ed;}
.btn-sm {padding:6px 13px;}
.btn-status.is-on {background:#b93160; border-color:#b93160; color:#fff;}
.panel {padding:26px; box-shadow:none; margin-bottom:24px;}
.page-head {margin-bottom:30px;}
.page-head h1 {font-size:40px; line-height:1.2; letter-spacing:-1.3px; margin-bottom:24px;}
.page-hint {font-size:13px;}
.input {padding:12px 15px; background:#fafafa; border-radius:12px;}
.s10,.s9 {color:#ad2a58;}.s8 {color:#a94a1b;}.s7 {color:#946512;}.s6 {color:#51752c;}.s5 {color:#267774;}.s4 {color:#2869a9;}
.card-score {color:#fff; background:#1d1d1fde; border-radius:999px; padding:3px 10px;}
.game-card {border-radius:18px; border-color:#e8e8ed; transition:transform .3s,box-shadow .3s,border-color .3s;}
.game-card:hover {transform:translateY(-6px); border-color:#dcc6cf; box-shadow:0 14px 30px #24242c0c;}
.game-card .cover {transition:transform .55s cubic-bezier(.2,.7,.3,1);}
.game-card:hover .cover {transform:scale(1.035);}
.card-body {padding:16px; gap:5px;}
.card-title {font-size:15px;}
.card-sub {font-size:11px;}
.tag {font-size:10px; background:#36363c;}
.tag-cn {background:#4b7662;}
.tag-r18 {background:#805264;}
.game-head {grid-template-columns:260px minmax(0,1fr); gap:48px; margin-bottom:36px;}
.game-intro h1 {font-size:36px; letter-spacing:-.8px;}
.game-cover img {box-shadow:var(--shadow);}
.star {transition:background .2s,transform .2s,color .2s;}
.star:active {transform:scale(.9);}
.star.on,.star.hover {background:#b93160; color:#fff; border-color:#b93160;}
.rank-table td {padding:17px 10px;}
.rank-no {font-size:22px; font-weight:500;}
.rank-cover {width:72px; height:54px; flex-basis:72px;}
.tabs {gap:6px;}
.tab.is-active {background:#1d1d1f; color:#fff; border-color:#1d1d1f;}
.eyebrow {font-size:10px; font-weight:650; letter-spacing:2.2px; margin:0 0 18px; color:var(--text-dim); line-height:1.5;}
.text-link {color:#b93160; font-size:13px; display:inline-flex; align-items:center; gap:12px; white-space:nowrap;}
.text-link span {font-size:18px; transition:transform .2s;}
.text-link:hover span {transform:translate(2px,-2px);}
.ink-pink {color:#b93160;}
.section-space {margin-top:100px;}
.section-heading {display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:32px;}
.section-heading h2 {font-size:34px; letter-spacing:-1px; line-height:1.3; margin:0; font-weight:650;}
.section-heading p:not(.eyebrow) {color:var(--text-dim); margin:12px 0 0; font-size:14px;}
.section-heading .eyebrow {margin-bottom:10px;}
.home-hero {position:relative; display:grid; grid-template-columns:1fr 1fr; min-height:665px; align-items:center; gap:16px; border-bottom:1px solid var(--border);}
.hero-copy {position:relative; z-index:2; padding:60px 0 82px 24px;}
.hero-copy .eyebrow {margin-bottom:28px;}
.hero-copy h1 {font-size:clamp(46px,5.5vw,76px); font-weight:700; line-height:1.21; letter-spacing:-3px; margin:0 0 28px;}
.hero-description {font-size:17px; color:var(--text-dim); line-height:1.85; margin:0 0 30px;}
.hero-actions {gap:25px; align-items:center;}
.hero-foot {display:flex; gap:8px; align-items:center; font-size:11px; color:#74747a; margin-top:44px;}
.live-dot {display:inline-block; width:5px; height:5px; background:#5e8e78; border-radius:50%; flex-shrink:0;}
.hero-art {position:relative; height:610px; display:block; overflow:hidden; background:radial-gradient(ellipse at 60% 45%,#fae5ed 0,#fbfbfd 68%); border-radius:0 0 100px 100px; transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0); transition:transform .5s ease-out;}
.hero-art:hover {color:inherit;}
.hero-poster-window {position:absolute; inset:16px -18px 25px; overflow:hidden; mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 78%,transparent 96%); -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 78%,transparent 96%); mix-blend-mode:multiply;}
.hero-poster-window img {width:100%; max-width:none; height:auto; transform:translateY(-40px);}
.hero-orbit {position:absolute; border:1px solid #e2cad34a; border-radius:50%; width:410px; height:410px; left:15%; top:18%; transform:rotate(-22deg);}
.orbit-two {width:500px; height:500px; left:5%; top:10%; border-style:dashed;}
.hero-art-caption {position:absolute; bottom:52px; left:24px; right:24px; display:flex; align-items:center; flex-wrap:wrap; gap:12px; background:#ffffffde; backdrop-filter:blur(16px); padding:18px 24px; border-radius:18px; border:1px solid #fff; box-shadow:0 12px 34px #79394a0a;}
.tiny-label {width:100%; font-size:8px; letter-spacing:2.1px; color:#906f7b;}
.hero-art-caption strong {font-size:23px; letter-spacing:-.5px; line-height:1.1; font-weight:550;}
.hero-art-caption strong span {font-size:16px; margin-left:16px; font-weight:600;}
.art-arrow {margin-left:auto; border:1px solid #e5dce0; border-radius:50%; display:grid; place-items:center; width:35px; height:35px; font-size:19px;}
.hero-bottom {position:absolute; bottom:18px; left:24px; right:24px; display:flex; justify-content:space-between; gap:20px; color:#929298; font-size:10px; letter-spacing:.7px;}
.scroll-cue {display:flex; gap:10px;}
.scroll-cue span {animation:cue-float 2s ease-in-out infinite;}
.replay-button {background:none; border:none; font-size:10px; color:#77777d; cursor:pointer;}
.annual-teaser {display:grid; grid-template-columns:1fr 1fr; min-height:430px; padding:56px; border-radius:28px; overflow:hidden; background:#17161a; color:#fff; position:relative;}
.annual-teaser-copy {position:relative; z-index:3;}
.annual-teaser .eyebrow {color:#ce829a; font-size:9px;}
.year-label {color:#d0c6cc; font-size:12px;}
.annual-teaser h2 {font-size:36px; letter-spacing:-1px; line-height:1.4; margin:15px 0;}
.annual-teaser-copy>p:not(.eyebrow) {color:#c4b8be; font-size:13px; margin-bottom:28px; max-width:340px;}
.teaser-stack {position:relative; min-width:0; perspective:900px;}
.teaser-cover {position:absolute; width:260px; height:185px; border-radius:12px; overflow:hidden; box-shadow:0 16px 48px #0007; border:3px solid #fff; transition:transform .5s;}
.annual-art {width:100%; height:100%; display:block;}
.teaser-cover-0 {left:24%; top:0; transform:rotate(9deg); z-index:2;}
.teaser-cover-1 {left:5%; top:90px; transform:rotate(-12deg); z-index:3;}
.teaser-cover-2 {left:41%; top:156px; transform:rotate(9deg); z-index:4;}
.annual-teaser:hover .teaser-cover-0 {transform:translateY(-6px) rotate(13deg);}
.annual-teaser:hover .teaser-cover-1 {transform:translateX(-8px) rotate(-15deg);}
.annual-teaser:hover .teaser-cover-2 {transform:translate(6px,6px) rotate(12deg);}
.teaser-cover>span {position:absolute; bottom:8px; left:12px; color:#fff; font-size:26px; font-weight:600; text-shadow:0 2px 8px #000;}
.teaser-watermark {position:absolute; bottom:-40px; right:-32px; font-size:80px; font-weight:800; color:#ffffff08; letter-spacing:-5px;}
.discovery-grid {display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px;}
.discovery-grid .card-sub,.discovery-grid .card-meta:nth-last-child(2) {display:none;}
.discovery-grid .card-body {padding:14px 12px;}
.discovery-grid .card-title {font-size:13px; min-height:38px;}
.discovery-grid .cover-box {aspect-ratio:3/4; background:#ededf0;}
.discovery-grid .cover {object-fit:contain;}
.playing-note {font-size:10px; color:#6e6e73; text-align:center; margin:12px 0 0;}
.playing-note .live-dot {margin-right:6px;}
.voice-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px;}
.voice-card {background:#fff; border:1px solid #e8e8ed; border-radius:20px; padding:26px; display:flex; flex-direction:column;}
.voice-top {display:flex; gap:10px; align-items:center;}
.avatar-letter {display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:#f8e7ee; color:#a02d53; font-size:12px;}
.voice-top>div>a {font-size:12px; font-weight:600;}
.voice-top>div>span {display:block; font-size:10px; color:#929298; margin-top:2px;}
.voice-score {margin-left:auto; font-size:23px; color:#b93160; font-weight:550;}
.voice-score small {font-size:9px; color:#929298; font-weight:400; margin-left:4px;}
.voice-body {font-size:13px; color:#55555b; line-height:1.95; flex:1; margin:24px 0;}
.voice-work {border-top:1px solid #eeeef1; padding-top:16px; display:flex; justify-content:space-between; gap:12px; font-size:11px; color:#8a5369;}
.section-kicker {font-size:10px; color:#929298; white-space:nowrap;}
.home-bottom-grid {display:grid; grid-template-columns:1.1fr 1fr; gap:70px;}
.home-bottom-grid h2 {font-size:28px;}
.home-bottom-grid .section-heading {margin-bottom:15px;}
.rank-caption {font-size:12px; color:var(--text-dim); margin:0 0 15px;}
.home-rank-row {display:flex; align-items:center; gap:16px; padding:16px 0; border-bottom:1px solid var(--border);}
.home-rank-number {font-size:17px; color:#929298; font-weight:500; width:26px;}
.home-rank-row img {width:64px; height:48px; object-fit:contain; background:#f0f0f3; border-radius:6px;}
.home-rank-name {font-size:13px; flex:1;}
.home-rank-name small {display:block; font-size:10px; color:#929298; margin-top:2px;}
.home-rank-row>strong {font-size:25px; color:#b93160; font-weight:550;}
.home-activity .activity {padding:18px 0; font-size:12px; display:flex; flex-direction:column; gap:6px;}
.home-activity .activity-time {font-size:10px; color:#929298;}
.home-activity .chip {font-size:10px;}
.recent-link {display:inline-block; font-size:11px; color:#b93160; margin-top:22px;}
.battle-teaser {position:relative; background:#f0edf7; padding:48px 56px; margin-top:100px; border-radius:28px; display:flex; align-items:center; justify-content:space-between; overflow:hidden; min-height:300px;}
.battle-teaser h2 {font-size:36px; line-height:1.35; letter-spacing:-1px; margin:0; color:#39314e;}
.battle-teaser p:not(.eyebrow) {color:#827b92; font-size:12px; margin-top:20px;}
.battle-star {font-size:245px; line-height:1; color:#d9cfe8; position:absolute; left:58%; top:22px; animation:star-turn 40s linear infinite;}
.battle-teaser-link {font-size:12px; color:#69557f; position:relative; align-self:flex-end;}
.annual-page {--bg:#111114; --bg-soft:#17171b; --surface:#1a191e; --surface-2:#202026; --text:#f5f5f7; --text-dim:#aaa4ae; --border:#ffffff16; --brand:#f39bbb; color-scheme:dark; background:#111114;}
.annual-page .topbar {background:#151518db; border-color:#ffffff12;}
.annual-page .nav-link {color:#bdb8c0;}
.annual-page .nav-link.is-active,.annual-page .nav-link:hover {color:#f39bbb;}
.annual-page .nav-right .btn-primary {background:#f5f5f7; color:#242426;}
.annual-page .footer {background:#16161a;}
.annual-page .footer-note a {color:#f39bbb;}
.annual-heading {min-height:570px; position:relative; padding:95px 40px 70px; overflow:hidden; text-align:center; border-bottom:1px solid #ffffff13;}
.annual-heading .eyebrow {color:#d994ae;}
.annual-heading h1 {font-size:clamp(80px,11vw,148px); line-height:1.3; font-weight:650; letter-spacing:-7px; margin:18px 0; position:relative; z-index:1;}
.annual-heading h1>span:first-child {color:#ed759f;}
.annual-title-dot {color:#fafafa;}
.annual-heading-sub {font-size:18px; color:#c7bec8; margin:18px 0 30px; position:relative; z-index:1;}
.annual-heading-meta {display:flex; justify-content:center; gap:24px; font-size:10px; letter-spacing:.5px; color:#938b98; position:relative; z-index:1;}
.annual-scroll {display:inline-flex; gap:18px; font-size:11px; color:#a99aaa; margin-top:50px; position:relative; z-index:1;}
.annual-ghost-year {position:absolute; font-size:350px; font-weight:750; line-height:1; color:#ffffff03; letter-spacing:-25px; left:50%; top:0; transform:translateX(-50%); pointer-events:none;}
.podium-feature {position:relative; display:grid; grid-template-columns:.85fr 1.2fr; gap:70px; align-items:center; padding:85px 28px; border-bottom:1px solid #ffffff13; min-height:520px;}
.podium-copy {position:relative;}
.podium-copy .eyebrow {color:#d98aaa;}
.podium-number {position:absolute; font-size:170px; color:#ffffff04; font-weight:650; line-height:1; top:0; left:-15px; letter-spacing:-10px; pointer-events:none;}
.podium-copy h2 {font-size:38px; font-weight:600; letter-spacing:-1px; line-height:1.3; margin:40px 0 15px; position:relative;}
.podium-copy h2>span {display:block; font-size:21px; color:#cdc3ce; margin-top:10px; font-weight:450;}
.podium-caption {font-size:12px; color:#a69cab;}
.round-results {display:flex; gap:30px; margin:27px 0 32px;}
.round-results>span {font-size:10px; color:#918695;}
.round-results strong {display:block; font-size:24px; color:#d6cbd8; font-weight:500; margin-top:5px;}
.round-results>span:last-child strong {color:#f39bbb;}
.podium-art {position:relative; border-radius:18px; overflow:hidden; aspect-ratio:1.45; background:#202026; box-shadow:0 24px 70px #0005; transition:transform .6s;}
.podium-art:hover {transform:translateY(-5px);}
.podium-image-caption {position:absolute; bottom:0; left:0; right:0; padding:28px 20px 14px; font-size:8px; letter-spacing:2px; background:linear-gradient(transparent,#000a); color:#eee;}
.annual-finalists {padding:0 28px;}
.annual-finalists .section-heading p {color:#a89bab;}
.finalists-count {font-size:28px; color:#584c5d;}
.finalists-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 24px;}
.finalist-card {background:#1b191f; border:1px solid #ffffff09; border-radius:18px; overflow:hidden; transition:transform .3s,border-color .3s;}
.finalist-card:hover {transform:translateY(-5px); border-color:#d283a355;}
.finalist-image {display:block; aspect-ratio:1.5; position:relative; overflow:hidden;}
.finalist-image .annual-art {transition:transform .5s;}
.finalist-card:hover .annual-art {transform:scale(1.035);}
.finalist-number {position:absolute; top:12px; left:12px; padding:3px 10px; background:#111b; border:1px solid #ffffff25; backdrop-filter:blur(8px); border-radius:8px; font-size:17px; font-weight:550;}
.finalist-body {padding:22px;}
.finalist-body h3 {font-size:18px; margin:0 0 13px; line-height:1.4; font-weight:550;}
.finalist-body p {font-size:10px; color:#a99aaf; margin:0; display:flex; gap:16px; flex-wrap:wrap;}
.finalist-body small {font-size:10px; color:#a99aaf; display:block; margin-top:14px;}
.series-badge {display:inline-block; font-size:9px; border:1px solid #ffffff20; padding:2px 6px; border-radius:4px; margin-left:10px; color:#bea5c2; vertical-align:middle;}
.finalist-link {display:inline-flex; font-size:11px; color:#e59abb; gap:12px; margin-top:22px;}
.annual-archive {padding:65px 28px 0; border-top:1px solid #ffffff13;}
.archive-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px;}
.archive-poster {border:1px solid #ffffff18; padding:0; background:#19171f; border-radius:16px; overflow:hidden; text-align:left; cursor:pointer; color:#eee; transition:transform .3s;}
.archive-poster:hover {transform:translateY(-5px);}
.archive-poster img {width:100%; height:auto; aspect-ratio:2150/3036; object-fit:contain;}
.archive-poster>span {display:flex; justify-content:space-between; padding:18px 20px; font-size:12px;}
.annual-closing {text-align:center; padding:110px 20px 40px;}
.annual-closing p {font-size:34px; color:#d2bfd3; line-height:1.6; letter-spacing:-1px; margin:0 0 32px;}
.poster-dialog {border:1px solid #ffffff20; background:#151518; color:#fff; border-radius:16px; width:min(860px,94vw); max-height:92vh; padding:0; box-shadow:0 30px 100px #0008;}
.poster-dialog::backdrop {background:#0b0b0bd9; backdrop-filter:blur(12px);}
.poster-dialog[open] {animation:dialog-enter .25s ease-out;}
.poster-dialog-top {position:sticky; top:0; display:flex; align-items:center; justify-content:space-between; background:#151518ed; backdrop-filter:blur(10px); padding:16px 24px; border-bottom:1px solid #ffffff15;}
.poster-dialog-top strong {font-size:12px; font-weight:500;}
.poster-dialog-top button {background:#ffffff12; color:#ddd; border:none; border-radius:30px; padding:7px 14px; cursor:pointer;}
.poster-dialog-image {width:100%;}
body.poster-open {overflow:hidden;}
.battle-placeholder {min-height:740px; text-align:center; position:relative; padding:100px 20px 120px; overflow:hidden; background:radial-gradient(ellipse at 50% 40%,#f1e8f5 0,#fbfbfd 65%);}
.battle-placeholder .eyebrow {position:relative; z-index:1;}
.battle-symbol {position:absolute; left:50%; top:65px; transform:translateX(-50%); font-size:530px; line-height:1; color:#e6d7ed55; pointer-events:none;}
.coming-pill {display:inline-block; position:relative; margin:30px 0 24px; border:1px solid #d7c9df; border-radius:30px; padding:5px 18px; color:#8a6c9b; font-size:11px;}
.battle-placeholder h1 {font-size:clamp(42px,6vw,72px); position:relative; line-height:1.3; letter-spacing:-2.5px; color:#443250; margin:0 0 24px;}
.battle-placeholder>p:not(.eyebrow) {position:relative; color:#8a7794; font-size:15px; margin:0 0 36px;}
.battle-placeholder>.btn {position:relative;}
.battle-placeholder-foot {position:absolute; bottom:45px; left:50px; right:50px; border-top:1px solid #e5dce9; display:flex; justify-content:space-between; padding-top:24px; font-size:10px; letter-spacing:2px; color:#9c89a6;}
.motion-ready [data-reveal].reveal-pending {opacity:0; transform:translateY(24px);}
.motion-ready [data-reveal] {transition:opacity .65s cubic-bezier(.2,.7,.3,1),transform .65s cubic-bezier(.2,.7,.3,1); transition-delay:var(--reveal-delay,0ms);}
.intro-play .hero-enter {animation:hero-enter .85s cubic-bezier(.2,.7,.3,1) both;}
.intro-play .hero-enter:nth-child(2) {animation-delay:.12s;}
.intro-play .hero-enter:nth-child(3) {animation-delay:.24s;}
.intro-play .hero-enter:nth-child(4) {animation-delay:.36s;}
.intro-play .hero-enter:nth-child(5) {animation-delay:.44s;}
.intro-play .hero-art {animation:art-enter 1.1s cubic-bezier(.2,.7,.3,1) both;}
@keyframes hero-enter {from {opacity:0; transform:translateY(22px); filter:blur(3px);} to {opacity:1; transform:translateY(0); filter:blur(0);}}
@keyframes art-enter {from {opacity:0; transform:translateY(24px) scale(.98);} to {opacity:1; transform:translateY(0) scale(1);}}
@keyframes cue-float {0%,100% {transform:translateY(-2px);} 50% {transform:translateY(3px);}}
@keyframes star-turn {to {transform:rotate(360deg);}}
@keyframes dialog-enter {from {opacity:0; transform:translateY(12px) scale(.98);} to {opacity:1; transform:translateY(0) scale(1);}}
@media(min-width:1000px) {.podium-copy {position:sticky; top:120px;}}
@media(max-width:1100px) {
  .nav {gap:8px;} .topbar-inner {gap:18px;}
  .hero-copy {padding-left:8px;} .hero-copy h1 {font-size:60px;}
  .hero-actions {gap:14px;} .hero-actions .text-link {font-size:12px;}
  .annual-teaser {padding:44px;} .teaser-cover {width:220px; height:158px;}
  .teaser-cover-2 {left:32%;}
  .discovery-grid {grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px;}
  .discovery-grid .cover-box {aspect-ratio:4/3;}
  .home-bottom-grid {gap:40px;}
}
@media(max-width:800px) {
  .topbar-inner {height:60px; gap:14px;} .brand-name {display:inline; font-size:15px;}
  .nav {display:none; position:absolute; top:60px; left:0; right:0; padding:15px 24px 24px; background:#fbfbfdf7; backdrop-filter:blur(22px); border-bottom:1px solid var(--border); flex-direction:column; gap:2px;}
  .nav.is-open {display:flex;} .nav .nav-link {padding:12px 8px; font-size:15px;}
  .annual-page .nav {background:#18161cf7;}
  .menu-toggle {display:block;}
  .menu-toggle[aria-expanded="true"] span:first-child {transform:translateY(3.25px) rotate(45deg);}
  .menu-toggle[aria-expanded="true"] span:last-child {transform:translateY(-3.25px) rotate(-45deg);}
  .nav-right {margin-left:auto; gap:5px;} .nav-user {gap:8px;}
  .home-hero {min-height:590px; grid-template-columns:1.05fr 1fr; gap:0;}
  .hero-copy {padding:40px 0 72px;}
  .hero-copy h1 {font-size:47px; letter-spacing:-2px;} .hero-description {font-size:14px;}
  .hero-art {height:500px;} .hero-poster-window {inset:10px -50px 30px;}
  .hero-actions {align-items:flex-start; flex-direction:column; gap:18px;}
  .hero-foot {font-size:9px; margin-top:30px;}
  .hero-art-caption {left:5px; right:5px; bottom:65px; padding:15px;}
  .hero-art-caption strong {font-size:20px;} .hero-art-caption strong span {font-size:13px; margin-left:10px;}
  .hero-bottom {left:0; right:0;}
  .annual-teaser {padding:36px; min-height:390px;} .annual-teaser h2 {font-size:29px;}
  .teaser-cover {width:180px; height:130px;} .teaser-cover-0 {top:20px; left:10%;} .teaser-cover-1 {top:105px; left:0;} .teaser-cover-2 {top:180px; left:25%;}
  .section-space {margin-top:70px;} .section-heading h2 {font-size:28px;}
  .voice-grid {grid-template-columns:1fr;} .voice-card {padding:24px;}
  .voice-body {margin:18px 0;} .section-kicker {display:none;}
  .home-bottom-grid {grid-template-columns:1fr; gap:60px;}
  .battle-teaser {margin-top:70px; padding:36px; min-height:280px;} .battle-teaser h2 {font-size:30px;}
  .battle-star {font-size:210px; left:55%; top:40px;} .battle-teaser-link {z-index:1;}
  .game-head {grid-template-columns:190px minmax(0,1fr); gap:24px;} .game-intro h1 {font-size:27px;}
  .podium-feature {gap:35px; padding:60px 10px; min-height:450px;}
  .podium-copy h2 {font-size:29px;} .round-results {gap:20px;}
  .annual-finalists,.annual-archive {padding-left:10px; padding-right:10px;}
  .finalists-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px;}
  .annual-heading {min-height:490px; padding:80px 15px 60px;} .annual-heading h1 {letter-spacing:-5px;}
  .annual-ghost-year {font-size:240px; top:50px;}
  .finalist-body {padding:18px;} .finalist-body h3 {font-size:17px;}
}
@media(max-width:540px) {
  .wrap {padding-left:20px; padding-right:20px;}
  .main {padding-top:30px;} .home-page .main,.annual-page .main,.battle-page .main {padding-top:0;}
  .brand-mark {width:22px; height:22px;} .brand {gap:6px;}
  .nav-right .btn-primary {padding:5px 11px;} .nav-user>.nav-link {font-size:11px; max-width:80px; overflow:hidden; text-overflow:ellipsis;}
  .badge-admin {display:none;} .nav-search {padding:5px;}
  .home-hero {display:flex; flex-direction:column; align-items:stretch; gap:0; min-height:0;}
  .hero-copy {padding:52px 4px 0; text-align:center;}
  .hero-copy .eyebrow {font-size:8px; letter-spacing:1.7px; margin-bottom:22px;}
  .hero-copy h1 {font-size:clamp(40px,12.4vw,48px); line-height:1.2; margin-bottom:20px;}
  .hero-description {font-size:13px; margin-bottom:24px;}
  .hero-actions {align-items:center; gap:16px; flex-direction:row; justify-content:center; flex-wrap:wrap;}
  .hero-actions .btn {font-size:12px; padding:10px 18px;} .hero-actions .text-link {font-size:11px; gap:5px;}
  .hero-foot {justify-content:center; margin-top:28px; font-size:9px;}
  .hero-art {height:365px; margin-top:0; border-radius:0;}
  .hero-poster-window {inset:-15px 12px -35px;} .hero-poster-window img {transform:translateY(-18px);}
  .hero-orbit {width:230px; height:230px; top:15%; left:20%;} .orbit-two {width:300px; height:300px; top:7%; left:10%;}
  .hero-art-caption {bottom:35px; left:18px; right:18px; padding:14px 18px; gap:8px;}
  .hero-art-caption strong {font-size:21px;} .hero-art-caption strong span {font-size:13px;}
  .tiny-label {font-size:7px;} .art-arrow {width:28px; height:28px;}
  .hero-bottom {position:relative; bottom:auto; padding:0 0 18px; font-size:8px; gap:10px;}
  .hero-bottom>span {display:none;} .replay-button {font-size:9px;}
  .section-space {margin-top:56px;}
  .section-heading {align-items:flex-start; gap:15px; margin-bottom:24px; flex-wrap:wrap;}
  .section-heading h2 {font-size:26px; letter-spacing:-.7px;} .section-heading p:not(.eyebrow) {font-size:12px;}
  .eyebrow {font-size:8px; letter-spacing:1.7px;}
  .text-link {font-size:11px; gap:7px;}
  .annual-teaser {display:block; padding:30px 26px 0; min-height:540px; border-radius:22px;}
  .annual-teaser h2 {font-size:29px;} .annual-teaser-copy>p:not(.eyebrow) {font-size:11px; margin-bottom:22px;}
  .annual-teaser .btn {font-size:12px; padding:10px 18px;}
  .teaser-stack {height:210px; margin-top:28px;}
  .teaser-cover {width:160px; height:116px; border-width:2px;}
  .teaser-cover-0 {left:20%; top:0;} .teaser-cover-1 {left:0; top:60px;} .teaser-cover-2 {left:42%; top:100px;}
  .teaser-watermark {font-size:65px; bottom:0;}
  .discovery-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 14px;}
  .discovery-grid .cover-box {aspect-ratio:4/3;} .discovery-grid .card-body {padding:12px;}
  .discovery-grid .card-title {font-size:12px; min-height:34px;}
  .discovery-grid .card-meta {font-size:10px;} .discovery-grid .tag {font-size:8px; padding:2px 4px;}
  .card-score {font-size:11px;} .game-card {border-radius:14px;}
  .voice-card {border-radius:18px; padding:22px;}
  .home-bottom-grid {gap:48px;} .home-rank-row {gap:12px;} .home-rank-name {font-size:12px;}
  .home-rank-row img {width:55px; height:42px;} .home-rank-row>strong {font-size:23px;}
  .battle-teaser {display:block; min-height:290px; padding:30px 26px; margin-top:56px; border-radius:22px;}
  .battle-teaser h2 {font-size:29px;} .battle-star {font-size:180px; left:auto; right:-10px; top:80px; opacity:.8;}
  .battle-teaser-link {display:inline-block; margin-top:22px;}
  .page-head h1 {font-size:32px;} .panel {padding:18px; border-radius:16px;}
  .game-head {display:block;} .game-cover {width:min(240px,75%); margin:0 auto 28px;} .game-intro h1 {font-size:28px;}
  .grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;} .card-body {padding:12px;}
  .search-form {flex-wrap:wrap;} .search-form>.input {flex-basis:100%;}
  .rank-table {font-size:11px;} .rank-table th:nth-child(n+5),.rank-table td:nth-child(n+5) {display:none;}
  .rank-table td,.rank-table th {padding:12px 5px;} .rank-table th {white-space:nowrap;} .rank-no {font-size:16px; width:20px;}
  .rank-game {gap:8px; min-width:0;} .rank-title {font-size:11px; overflow-wrap:anywhere;}
  .rank-cover {width:42px; height:38px; flex-basis:42px;} .rank-game .muted {font-size:9px;}
  .rate-stars {flex-wrap:wrap; gap:6px;} .star {width:30px; min-width:30px; height:34px;}
  .form-actions {flex-wrap:wrap;} .stats-row {grid-template-columns:repeat(2,minmax(0,1fr));}
  .annual-heading {padding:75px 0 45px; min-height:430px;}
  .annual-heading h1 {font-size:clamp(48px,16vw,64px); letter-spacing:-4px; margin:23px 0; white-space:nowrap;}
  .annual-heading-sub {font-size:14px;} .annual-heading-meta {flex-direction:column; gap:8px; font-size:9px;}
  .annual-scroll {margin-top:30px;} .annual-ghost-year {font-size:185px; letter-spacing:-12px; top:65px;}
  .podium-feature {display:flex; flex-direction:column; align-items:stretch; gap:28px; padding:45px 0;}
  .podium-copy h2 {font-size:32px; margin-top:28px;} .podium-copy h2>span {font-size:18px;}
  .podium-number {font-size:125px; left:0;} .round-results {margin:24px 0; gap:35px;}
  .podium-copy .btn {font-size:12px; padding:9px 19px;} .podium-art {border-radius:14px;}
  .annual-finalists,.annual-archive {padding-left:0; padding-right:0;}
  .finalists-grid {grid-template-columns:1fr; gap:22px;} .finalist-image {aspect-ratio:1.5;}
  .finalist-body {padding:22px;} .finalist-body h3 {font-size:21px;} .finalist-body p {font-size:11px;}
  .finalist-link {font-size:12px;} .finalists-count {font-size:21px;}
  .annual-archive {padding-top:45px;} .archive-grid {gap:10px;}
  .archive-poster {border-radius:8px;} .archive-poster>span {padding:11px 8px; font-size:9px;}
  .annual-closing {padding:70px 0 25px;} .annual-closing p {font-size:27px;}
  .battle-placeholder {min-height:650px; padding-top:80px;} .battle-symbol {font-size:400px; top:100px;}
  .battle-placeholder h1 {font-size:46px;} .battle-placeholder>p:not(.eyebrow) {font-size:12px;}
  .battle-placeholder-foot {left:10px; right:10px; font-size:8px;}
  .footer-inner {padding-left:20px; padding-right:20px;}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto;}
  *,*::before,*::after {animation:none!important; transition:none!important;}
  .motion-ready [data-reveal].reveal-pending {opacity:1; transform:none;}
  .hero-art {transform:none!important;}
}

/* 糖糖星 2.0 · 同好创作与日常记录 */
:root{--brand:#d92b65;--wrap:1280px;--rose:#ec2b68;--cream:#fffaf7}
[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body{background:#fcfcfd}.brand-mark{width:32px;height:32px;border-radius:10px}.brand-name{display:block;font-size:17px}.topbar-inner{gap:24px}.nav{gap:10px}.nav-link{font-size:11px;padding:8px 4px}.nav-user{gap:8px}.footer-art-note{display:block;margin-top:8px}.footer{margin-top:15px}.footer-inner{line-height:1.9}
.home-page .main,.festival-page .main,.journal-page .main,.about-page .main{padding-top:0}.festival-page .main,.journal-page .main{padding-bottom:60px}.eyebrow{color:#767078}.section-heading h3{font-size:22px;letter-spacing:-.5px;margin:0}.section-space{margin-top:110px}.btn-primary{background:#d92b65;border-color:#d92b65}.btn-primary:hover{background:#c42158;border-color:#c42158}.live-dot{background:#d92b65}
.festival-hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:740px;align-items:center;isolation:isolate;margin-bottom:50px}.festival-copy{padding:50px 0 75px 34px;z-index:3}.festival-kicker{font-size:12px;color:#af3a5e;margin:0 0 32px;letter-spacing:1.4px;display:flex;align-items:center;gap:10px}.festival-copy h1{font-size:clamp(50px,5.3vw,74px);line-height:1.18;letter-spacing:-3px;margin:0 0 28px;font-weight:700}.festival-copy h1>span{color:var(--rose)}.festival-lead{font-size:17px;line-height:1.85;color:#777079;margin:0 0 30px}.festival-actions{display:flex;align-items:center;gap:26px}.festival-actions .btn{padding:12px 25px;font-size:13px}.festival-actions .text-link{font-size:12px}.festival-date{margin-top:35px;display:flex;align-items:center;gap:16px;font-size:10px;color:#8a8087}.festival-date>span:first-child{letter-spacing:2px;color:#55424d;font-size:13px}.festival-stage{position:relative;height:660px;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform .7s cubic-bezier(.2,.8,.2,1);min-width:0}.festival-character{width:100%;height:100%;object-fit:cover;object-position:center 30%;mix-blend-mode:multiply;position:relative;z-index:2;-webkit-mask-image:linear-gradient(#000 82%,transparent 100%);mask-image:linear-gradient(#000 82%,transparent 100%)}.festival-year{position:absolute;top:0;left:-55px;font-weight:750;font-size:150px;line-height:1;letter-spacing:-9px;color:transparent;-webkit-text-stroke:1px #efbdce;transform:rotate(-8deg);z-index:-1}.festival-stage:before{content:'';position:absolute;inset:40px -20px 10px -40px;background:radial-gradient(ellipse at 50% 46%,#ffeaf3 0%,#fff2f72e 46%,transparent 67%);z-index:-2}.stage-ring{position:absolute;border:1px solid #efc5d433;border-radius:50%;width:510px;height:510px;left:50%;top:52%;transform:translate(-50%,-50%);z-index:-1}.ring-b{width:410px;height:410px;border-style:dashed;animation:orbit-turn 60s linear infinite}.stage-spark{position:absolute;z-index:3;color:#ed5583;width:34px;height:34px;animation:star-breathe 5s ease-in-out infinite;pointer-events:none}.spark-a{right:0;top:23%;width:50px;height:50px}.spark-b{left:4%;top:62%;width:25px;height:25px;animation-delay:-2s}.stage-label{position:absolute;top:25%;left:-16px;writing-mode:vertical-rl;letter-spacing:2px;font-size:8px;color:#a95774;z-index:3;display:flex;align-items:center;gap:12px}.stage-label-line{height:45px;width:1px;background:#d5829f}.stage-ticket{position:absolute;z-index:4;bottom:58px;right:8px;text-align:left;border:1px solid #ead8df;background:#ffffffed;backdrop-filter:blur(18px);padding:18px 24px;min-width:238px;transform:rotate(-4deg);border-radius:15px;box-shadow:0 15px 35px #9b305614;cursor:pointer;transition:transform .3s,box-shadow .3s;color:#9b3056}.stage-ticket:hover{transform:rotate(0) translateY(-5px);box-shadow:0 20px 45px #9b30561c}.stage-ticket>span{display:block;font-size:8px;letter-spacing:2px;color:#8d7582;margin-bottom:7px}.stage-ticket strong{font-size:18px;font-weight:600;display:flex;align-items:center;gap:25px}.festival-bottom{position:absolute;bottom:0;left:34px;right:12px;border-top:1px solid #ece6e9;display:flex;justify-content:space-between;align-items:center;padding:20px 0;color:#93868d;font-size:10px}.festival-bottom .replay-button{color:#96808c}.festival-bottom .scroll-cue{font-size:10px}
.discovery-tools{display:flex;align-items:center;gap:26px;background:#f4f2f5;border-radius:22px;padding:30px 32px;scroll-margin-top:95px}.tools-intro{flex:0 0 270px}.tools-intro .eyebrow{margin:0 0 7px;font-size:8px}.tools-intro h2{margin:0;font-size:19px;letter-spacing:-.6px}.home-search{display:flex;flex:1;align-items:center;border:1px solid #ebe4eb;background:#fff;border-radius:100px;padding:10px 10px 10px 22px;gap:12px}.home-search>span{font-size:30px;color:#9f929b;line-height:1}.home-search input{background:none;border:0;outline:0;flex:1;min-width:0;font-size:12px;color:#453a44;padding:8px 0}.home-search:focus-within{border-color:#d92b65;box-shadow:0 0 0 3px #d92b6512}.home-search button{border:none;background:#30232c;border-radius:50%;width:38px;height:38px;color:white;font-size:19px;cursor:pointer;flex-shrink:0}.my-checkin{white-space:nowrap;font-size:12px;display:flex;gap:18px;align-items:center}.community-discover{margin-top:88px}.records-foot{display:flex;justify-content:space-between;color:#948b91;font-size:10px;padding-top:24px;gap:15px}.home-bottom-grid{margin-top:50px;gap:60px}.home-bottom-grid .section-heading{margin-bottom:18px}.home-rank-row{padding:14px 0}.home-rank-row>strong{color:#ab335e;font-size:27px}.voice-card{background:#f6f5f7;border-color:transparent}.voice-body{font-size:14px;line-height:1.9}.avatar-letter{background:#fff0f5;color:#b93b66}.voice-score{color:#b93b66}.annual-teaser{background:linear-gradient(125deg,#241b24,#412134);min-height:430px}.annual-teaser-copy .eyebrow{color:#b995a5}.annual-teaser-copy h2{font-size:36px}.teaser-watermark{font-size:100px;color:#ffffff06}.annual-teaser-copy p{max-width:400px}
.journal-teaser{display:grid;grid-template-columns:1fr 1fr;background:#f5f0fb;border-radius:30px;min-height:570px;overflow:hidden;position:relative;align-items:center}.journal-teaser-copy{padding:70px 0 70px 65px;z-index:2}.journal-teaser-copy h2{font-size:54px;line-height:1.2;letter-spacing:-2px;margin:20px 0}.journal-teaser-copy>p:not(.eyebrow){font-size:14px;color:#7a6a85;line-height:1.9;margin-bottom:30px}.edition-pill{display:inline-block;border:1px solid #d8c8e5;color:#7e598c;padding:5px 12px;border-radius:99px;font-size:10px}.journal-feature-link{display:block;font-size:10px;margin-top:25px;color:#8c6b9f;line-height:1.8}.book-stage{position:relative;height:530px;display:flex;justify-content:center;align-items:center;perspective:1000px;isolation:isolate}.book-object{display:block;width:285px;aspect-ratio:1065/1510;position:relative;border-radius:2px 9px 9px 2px;transform:rotate(-10deg) rotateY(-14deg);box-shadow:6px 4px 0 #fce5fa,10px 8px 0 #d8c7e7,30px 35px 65px #785a8833;transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s;background:#ecb7e7;overflow:hidden;z-index:2}.book-object svg{display:block;width:100%;height:100%}.book-stage:hover .book-object,.journal-heading-book:hover .book-object{transform:rotate(-3deg) rotateY(-4deg) translateY(-8px);box-shadow:6px 4px 0 #fce5fa,10px 8px 0 #d8c7e7,35px 40px 70px #785a8844}.book-orbit{font-size:400px;letter-spacing:-25px;line-height:1;position:absolute;color:#ece1f5;top:60px;left:0;z-index:0;font-weight:750}.book-shadow{position:absolute;width:300px;height:65px;bottom:35px;background:#b693cf26;filter:blur(22px);border-radius:50%}
.kaeto-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;min-height:590px}.kaeto-art{position:relative;height:590px;isolation:isolate;display:flex;justify-content:center;align-items:flex-end;overflow:hidden}.kaeto-art>img{width:350px;height:570px;object-fit:contain;object-position:bottom;position:relative;z-index:2;-webkit-mask-image:linear-gradient(#000 85%,transparent 100%);mask-image:linear-gradient(#000 85%,transparent 100%)}.kaeto-halo{position:absolute;width:420px;height:420px;border-radius:50%;top:65px;background:linear-gradient(150deg,#fff1e8,#ffe3ee)}.kaeto-halo:after{content:'';position:absolute;inset:-25px;border:1px solid #f3dbe4;border-radius:50%}.kaeto-copy h2{font-size:38px;line-height:1.4;letter-spacing:-1.2px;margin:0 0 22px}.kaeto-copy h2>span{color:#a9919d}.kaeto-copy>p:not(.eyebrow){font-size:13px;color:#8c7f88;line-height:1.9}.kaeto-copy .kaeto-quip{font-size:15px!important;color:#b24972!important;border-left:2px solid #e8b7cc;padding-left:20px;margin:28px 0}.stamp-button{border:1px solid #e6d5de;background:#fff9fc;color:#ae426a;border-radius:99px;display:block;margin-top:25px;font-size:11px;padding:10px 18px;cursor:pointer}.stamp-result{position:relative;display:flex;align-items:center;gap:14px;min-height:0;height:0;visibility:hidden;opacity:0}.stamp-result img{width:75px;height:75px}.stamp-result span{font-size:11px;color:#a44c6d}.stamp-result.is-stamped{height:90px;visibility:visible;opacity:1;margin-top:5px}.stamp-result.is-stamped img{animation:stamp-land .55s cubic-bezier(.16,1,.3,1)}
.festival-idea{position:relative;text-align:center;padding:35px 0 60px}.festival-idea h2{font-size:48px;line-height:1.35;letter-spacing:-1.5px;margin:0 0 26px}.festival-idea>p:not(.eyebrow){color:#93848d;font-size:15px;line-height:2.1}.idea-star{display:block;color:#de9eb8;width:40px;height:40px;margin:34px auto 0}.festival-timeline{background:#f6f1f4;border-radius:24px;padding:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.festival-timeline>div{border-right:1px solid #e5dae0;padding-right:20px}.festival-timeline>div:nth-child(3){border-right:0}.festival-timeline span{font-size:8px;letter-spacing:1.5px;color:#a38191;display:block}.festival-timeline strong{display:block;font-size:29px;font-weight:550;letter-spacing:-.5px;margin-top:13px}.festival-timeline p{color:#a58c9b;font-size:11px;margin-bottom:0}.festival-timeline>small{grid-column:1/-1;border-top:1px solid #e5dae0;padding-top:20px;font-size:10px;color:#8c7581}.format-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px}.format-tabs button,.reading-filters button{font:inherit;border:1px solid #e7dbe2;border-radius:99px;background:white;padding:10px 22px;color:#9a7f8c;cursor:pointer;font-size:12px;transition:background .2s,color .2s}.format-tabs button[aria-selected=true],.reading-filters button[aria-pressed=true]{color:#fff;background:#3e2a36;border-color:#3e2a36}.format-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center;border:1px solid #ecdee5;border-radius:25px;min-height:340px;padding:45px 55px;background:#fff9fb;animation:format-enter .4s both}.format-number{font-size:50px;color:#e5c7d4;line-height:1}.format-panel h3{font-size:28px;letter-spacing:-.9px;font-weight:600;margin:18px 0}.format-panel p{font-size:13px;color:#99818e;line-height:1.9;max-width:490px}.format-panel .format-types{color:#b14d76;font-size:12px}.format-panel img{width:240px;height:240px;object-fit:contain;justify-self:center;mix-blend-mode:multiply}.submission-guide{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:65px 5px;align-items:start}.submission-guide h3{font-size:26px;font-weight:600;margin:0 0 20px}.submission-guide p{font-size:13px;line-height:1.9;color:#95868f}.submission-guide .btn{font-size:12px;margin-top:15px}.copy-feedback{display:block;min-height:20px;margin-top:12px;font-size:11px;color:#a4416b}.festival-faq details{border-bottom:1px solid #e8e0e5;padding:20px 0}.festival-faq details:first-child{padding-top:0}.festival-faq summary{font-size:14px;font-weight:600;cursor:pointer;color:#51434b;list-style:none;display:flex;justify-content:space-between;gap:20px}.festival-faq summary:after{content:'+';font-size:18px;font-weight:400;color:#ba819a}.festival-faq details[open] summary:after{content:'−'}.festival-faq details p{font-size:12px;margin:16px 0 0}.festival-closing{margin-top:50px;background:#fff0f5;text-align:center;border-radius:28px;padding:70px 20px}.festival-closing>span{display:block;width:45px;height:45px;margin:0 auto 25px;color:#d55882}.festival-closing h2{font-size:44px;line-height:1.3;letter-spacing:-1px;margin:0 0 26px}.festival-closing .text-link{margin:0 auto;background:none;border:none;cursor:pointer}.art-credit{font-size:9px;color:#b594a4;margin-top:40px}
.journal-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;min-height:660px;gap:50px;padding:70px 50px;background:radial-gradient(ellipse at 85% 50%,#f4e7fc 0%,transparent 50%)}.journal-heading h1{font-size:58px;letter-spacing:-2px;line-height:1.3;margin:25px 0}.journal-heading h1 span{color:#a36aaf}.journal-heading p:not(.eyebrow){color:#958b9a;line-height:1.9;font-size:13px;margin-bottom:25px}.journal-heading-book{display:flex;flex-direction:column;align-items:center;perspective:1200px}.journal-heading-book .book-object{width:270px;transform:rotate(8deg) rotateY(-12deg)}.book-caption{font-size:8px;letter-spacing:2px;color:#b39abc;margin-top:40px}.reading-feature{display:grid;grid-template-columns:1fr 1.2fr;min-height:470px;align-items:center;background:#eef5fb;border-radius:26px;overflow:hidden;gap:65px}.reading-feature-art{height:470px;overflow:hidden}.reading-feature-art img{width:100%;height:100%;object-fit:cover;object-position:center 42%;transition:transform .7s}.reading-feature-art:hover img{transform:scale(1.04)}.reading-feature>div{padding:45px 35px 45px 0}.reading-feature h2{font-size:46px;line-height:1.25;letter-spacing:-1.5px;margin:0 0 25px}.reading-feature p:not(.eyebrow){color:#7492a5;font-size:14px;line-height:1.9}.reading-feature .eyebrow{color:#7095b5}.reading-meta{display:block;font-size:10px;color:#8fa3b2;margin:22px 0}.reading-feature .btn{font-size:12px;background:#507ca6;border-color:#507ca6}.reading-filters{display:flex;gap:8px}.reading-filters button{padding:8px 18px;font-size:11px}.reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 25px}.reading-card{border:1px solid #eee8f0;border-radius:19px;overflow:hidden;background:white;transition:transform .3s,box-shadow .3s}.reading-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #3820470b}.reading-cover{display:block;aspect-ratio:1.3;position:relative;background:#e9f0f8;overflow:hidden}.reading-cover img{width:100%;height:100%;object-fit:cover;object-position:center 28%;transition:transform .6s}.reading-cover:hover img{transform:scale(1.04)}.reading-cover>span{position:absolute;bottom:13px;left:14px;background:#ffffffe8;color:#5c4e65;padding:5px 12px;border-radius:100px;font-size:10px;display:flex;gap:10px;align-items:center;backdrop-filter:blur(10px)}.reading-card-copy{padding:25px}.reading-card-copy .eyebrow{font-size:8px;color:#a898ad;margin-bottom:12px}.reading-card h3{font-size:20px;line-height:1.5;margin:0 0 12px;letter-spacing:-.5px}.reading-card-copy>p:not(.eyebrow){font-size:12px;color:#968c9d;line-height:1.85;min-height:45px}.reading-card-copy>div{border-top:1px solid #eee8f0;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:#a48da9}.reading-card-copy .text-link{font-size:10px}.tone-yellow .reading-cover{background:#fff0d5}.tone-rose .reading-cover img{object-position:center 8%;filter:saturate(.6)}.journal-source{color:#a398aa;font-size:10px;line-height:1.9;margin:30px 0 0}
.reader-page{background:#f3f2f5}.reader-page .main{max-width:1100px}.reader-heading{max-width:850px;margin:0 auto 36px}.reader-back{display:inline-block;font-size:12px;color:#9e7f9d;margin-bottom:36px}.reader-heading h1{font-size:40px;letter-spacing:-1.5px;line-height:1.3;margin:0 0 20px}.reader-heading .eyebrow{font-size:9px}.reader-byline{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#9b899e;margin:0 0 25px}.reader-intro{font-size:13px;line-height:1.95;color:#7e7584;max-width:680px}.reader-toolbar{position:sticky;top:68px;background:#fffffff2;backdrop-filter:blur(15px);z-index:10;border:1px solid #e6dfe9;border-radius:14px;padding:12px 16px;display:flex;align-items:center;gap:15px;margin-bottom:25px;box-shadow:0 5px 25px #39304905}.reader-page-controls{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.reader-toolbar button{padding:7px 12px;border:1px solid #e5dbe8;border-radius:8px;background:white;color:#947596;font-size:12px;cursor:pointer;white-space:nowrap}.reader-toolbar button:disabled{opacity:.35;cursor:default}.reader-toolbar button[aria-pressed=true]{background:#745a83;border-color:#745a83;color:white}.reader-toolbar select{background:none;border:0;color:#6f6378;font:inherit;font-size:12px;padding:6px;max-width:100%;min-width:0}.reader-page-status{font-size:10px;white-space:nowrap;color:#a58cac}.reader-figure{margin:0 auto 35px;max-width:850px}.reader-page-image{background:none;padding:0;border:none;width:100%;cursor:zoom-in;display:block;box-shadow:0 15px 50px #3c2a5112;border-radius:4px;overflow:hidden}.reader-page-image img{width:100%;height:auto}.reader-figure figcaption{color:#a99aac;font-size:10px;text-align:center;margin-top:13px}.reader-pages.is-turning{animation:page-turn .4s both}.reader-ending{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;padding:40px 0 25px;text-align:center}.reader-ending p{flex-basis:100%;color:#a394aa;font-size:12px}.reader-ending .text-link{font-size:11px}.zoom-tip{font-size:10px;color:#9e8894;padding:0 16px}.poster-dialog{max-height:94vh;max-width:94vw;padding-bottom:10px}.poster-dialog-image{cursor:zoom-in}.poster-dialog.is-zoomed{width:96vw;max-width:96vw}.poster-dialog.is-zoomed .poster-dialog-image{max-width:none;width:1700px;min-width:100%;cursor:zoom-out}.poster-dialog-top{position:sticky;top:0;z-index:2;background:var(--surface)}.poster-dialog.is-zoomed .poster-dialog-top{width:100%;position:sticky;left:0}.poster-dialog.is-zoomed .zoom-tip{position:sticky;left:0;width:100%}
.about-heading{padding:90px 35px 50px}.about-heading h1{font-size:59px;line-height:1.3;letter-spacing:-2px;margin:0 0 26px}.about-heading h1 span{color:#bc7b9a}.about-heading p:not(.eyebrow){font-size:14px;line-height:1.9;color:#a18b99}.about-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}.about-actions .copy-feedback{margin:0}.about-mascot{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#fff4f6;border-radius:30px;padding:55px 60px;overflow:hidden}.about-kaeto{height:470px;object-fit:contain;justify-self:center}.about-mascot h2{font-size:35px;line-height:1.4;letter-spacing:-1px}.about-mascot p:not(.eyebrow){font-size:13px;color:#9a7e8f;line-height:1.9}.mascot-portraits{display:flex;align-items:center;gap:25px;margin-top:25px}.mascot-portraits img{width:70px;height:70px;object-fit:contain;border-radius:15px}.about-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#241723;border-radius:22px}.about-video video[poster]{object-fit:contain}.video-meta{font-size:10px;color:#ab8d9f}.community-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.community-gallery-grid button{border:1px solid #eee2ea;background:white;padding:0;border-radius:20px;overflow:hidden;text-align:left;cursor:zoom-in;color:#8d5e79}.community-gallery-grid img{width:100%;height:450px;object-fit:cover;object-position:center 25%;transition:transform .5s}.community-gallery-grid button:hover img{transform:scale(1.03)}.community-gallery-grid button>span{display:flex;justify-content:space-between;padding:18px 24px;font-size:12px}.community-gallery-grid .gallery-wide{grid-column:1/-1}.community-gallery-grid .gallery-wide img{height:auto;aspect-ratio:2.1;object-position:center}
.mascot-widget{position:fixed;bottom:24px;right:25px;z-index:20}.mascot-toggle{border:1px solid #efdee7;background:#fffffff2;box-shadow:0 5px 25px #b562871c;border-radius:99px;display:flex;align-items:center;padding:5px 12px 5px 5px;gap:9px;cursor:pointer;color:#b14c77;backdrop-filter:blur(10px)}.mascot-toggle img{border-radius:50%;width:35px;height:35px}.mascot-toggle>span{font-size:10px}.mascot-message{position:absolute;width:245px;bottom:60px;right:0;background:#fff9fc;border:1px solid #ecd7e3;border-radius:20px;box-shadow:0 15px 55px #af527b24;padding:20px;text-align:center;animation:format-enter .3s}.mascot-message>img{width:125px;height:125px;object-fit:contain;margin:auto}.mascot-message>p{font-size:12px;line-height:1.8;color:#9b5b7c}.mascot-message>a{font-size:11px;color:#c34c80}.mascot-close{position:absolute;right:12px;top:10px;font-size:18px;color:#ab8da0;border:0;background:transparent;cursor:pointer;padding:4px 8px}.reader-page .mascot-widget{bottom:15px;right:15px}
@keyframes orbit-turn{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes star-breathe{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(.8) rotate(12deg)}}@keyframes stamp-land{0%{transform:scale(2) rotate(-15deg);opacity:0}55%{transform:scale(.94) rotate(-8deg);opacity:1}100%{transform:scale(1) rotate(-8deg)}}@keyframes format-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes page-turn{from{opacity:.45;transform:translateX(10px)}to{opacity:1;transform:translateX(0)}}
.poster-dialog{background:#fff;color:#493443;border-color:#e4d1dd}.poster-dialog-top{background:#fffffff5;border-color:#e7dce3}.poster-dialog-top button{background:#f6edf3;color:#785168}
.format-panel p{color:#786575}.format-panel .format-types{color:#a13e65}.submission-guide p,.festival-faq details p{color:#766772}.reading-card-copy>p:not(.eyebrow){color:#7b7081}.journal-heading p:not(.eyebrow){color:#786c7e}.reader-intro{color:#716578}.kaeto-copy>p:not(.eyebrow){color:#7d6d77}.about-mascot p:not(.eyebrow){color:#7e6575}
@media(min-width:1101px){.nav{display:flex}.menu-toggle{display:none}}
@media(max-width:1100px){.topbar-inner{gap:15px}.nav{display:none;position:absolute;left:0;right:0;top:68px;background:#fffffff7;backdrop-filter:blur(22px);padding:18px 25px;flex-wrap:wrap;border-bottom:1px solid #eee1e8;justify-content:flex-start;gap:10px 25px}.nav.is-open{display:flex}.nav-link{font-size:12px}.nav-right{margin-left:auto}.menu-toggle{display:block}.festival-copy{padding-left:15px}.festival-copy h1{font-size:57px}.festival-stage{height:590px}.festival-hero{min-height:680px}.festival-year{font-size:125px;left:-25px}.stage-ticket{right:0;min-width:200px;padding:15px 20px}.discovery-tools{gap:20px;padding:25px}.tools-intro{flex-basis:215px}.tools-intro h2{font-size:16px}.my-checkin{font-size:10px;gap:8px}.journal-teaser-copy{padding-left:45px}.journal-teaser-copy h2{font-size:45px}.book-object{width:240px}.kaeto-copy h2{font-size:32px}.kaeto-intro{gap:35px}.journal-heading{padding:60px 25px;gap:30px}.journal-heading h1{font-size:48px}.reading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-heading h1{font-size:48px}}
@media(max-width:800px){.section-space{margin-top:75px}.festival-hero{min-height:630px}.festival-copy{padding:35px 0 65px 10px}.festival-copy h1{font-size:47px;letter-spacing:-2px}.festival-kicker{font-size:9px;letter-spacing:1px;margin-bottom:25px}.festival-lead{font-size:13px}.festival-stage{height:520px}.festival-year{font-size:100px;left:-10px}.stage-ticket{min-width:160px;padding:14px 17px;bottom:60px}.stage-ticket>span{font-size:6px;letter-spacing:1px}.stage-ticket strong{font-size:13px;gap:20px}.stage-label{font-size:6px}.stage-spark.spark-a{width:30px;right:0}.stage-ring{width:360px;height:360px}.ring-b{width:300px;height:300px}.festival-actions{gap:15px;flex-wrap:wrap}.festival-actions .btn{padding:10px 18px;font-size:11px}.festival-actions .text-link{font-size:10px}.festival-date{margin-top:22px;gap:10px;font-size:8px}.festival-date>span:first-child{font-size:10px}.festival-bottom{left:10px;right:10px;font-size:8px}.festival-bottom .replay-button,.festival-bottom .scroll-cue{font-size:8px}.discovery-tools{flex-wrap:wrap;gap:18px}.tools-intro{flex:1 0 70%}.tools-intro h2{font-size:19px}.home-search{order:3;flex:1 0 100%}.my-checkin{margin-left:auto}.records-foot{font-size:8px}.journal-teaser{min-height:470px}.journal-teaser-copy{padding:45px 0 45px 35px}.journal-teaser-copy h2{font-size:37px}.journal-teaser-copy>p:not(.eyebrow){font-size:12px}.book-stage{height:420px}.book-object{width:210px}.book-orbit{font-size:300px;top:80px}.journal-feature-link{font-size:9px;max-width:235px}.kaeto-intro{min-height:450px;gap:25px}.kaeto-art{height:450px}.kaeto-art>img{height:430px;width:260px}.kaeto-halo{width:285px;height:285px;top:80px}.kaeto-copy h2{font-size:26px}.kaeto-copy>p:not(.eyebrow){font-size:11px}.kaeto-copy .kaeto-quip{font-size:12px!important}.festival-idea h2{font-size:37px}.festival-idea p:not(.eyebrow){font-size:13px}.festival-timeline{padding:30px;gap:20px}.festival-timeline strong{font-size:22px}.festival-timeline span{font-size:6px}.format-panel{padding:30px;gap:20px}.format-panel h3{font-size:23px}.format-panel img{width:180px;height:180px}.submission-guide{gap:35px;padding-top:45px}.submission-guide h3{font-size:23px}.journal-heading{min-height:560px}.journal-heading h1{font-size:42px}.journal-heading-book .book-object{width:210px}.reading-feature{min-height:400px;gap:35px}.reading-feature-art{height:400px}.reading-feature h2{font-size:36px}.reading-feature p:not(.eyebrow){font-size:12px}.reading-card-copy{padding:20px}.reading-card h3{font-size:18px}.about-mascot{padding:35px;gap:30px}.about-kaeto{height:410px}.about-mascot h2{font-size:29px}.about-mascot p:not(.eyebrow){font-size:11px}.mascot-portraits{gap:15px}.mascot-portraits img{width:55px;height:55px}.community-gallery-grid img{height:330px}}
@media(max-width:540px){.topbar-inner{height:62px;padding-left:18px;padding-right:13px;gap:8px}.topbar .brand-mark{width:26px;height:26px;border-radius:8px}.brand-name{font-size:14px;letter-spacing:-.5px}.brand{gap:7px}.nav-right{gap:5px}.nav-user{gap:4px}.nav-right .btn-primary{padding:5px 10px;font-size:10px}.nav-user>.nav-link{font-size:10px;padding:5px 3px;max-width:60px}.nav-search{display:none}.menu-toggle{width:31px;padding:8px 5px}.nav{top:62px;padding:18px 22px;gap:13px 22px}.nav .nav-link{font-size:12px}.festival-hero{display:flex;flex-direction:column;min-height:0;margin-bottom:30px;gap:0}.festival-copy{padding:45px 0 10px;text-align:center;width:100%}.festival-kicker{justify-content:center;font-size:8px;margin-bottom:21px;letter-spacing:.8px}.festival-copy h1{font-size:clamp(38px,11.8vw,48px);letter-spacing:-1.8px;line-height:1.2;margin-bottom:20px}.festival-lead{font-size:12px;line-height:1.9;margin-bottom:20px}.festival-actions{justify-content:center;gap:18px}.festival-actions .btn{padding:10px 18px;font-size:11px}.festival-date{justify-content:center;margin-top:22px;font-size:8px}.festival-stage{height:390px;width:100%;max-width:410px;margin:24px auto 0}.festival-character{object-position:center 28%}.festival-year{font-size:90px;left:0;top:-3px;letter-spacing:-5px}.stage-ring{width:285px;height:285px;top:50%}.ring-b{width:230px;height:230px}.stage-label{left:-4px;top:25%;font-size:6px}.spark-a{right:3px;top:16%}.spark-b{left:4%;top:60%;width:20px}.stage-ticket{bottom:24px;right:0;min-width:178px;padding:12px 17px;border-radius:12px}.stage-ticket strong{font-size:14px}.stage-ticket>span{font-size:6px;letter-spacing:1.4px}.festival-bottom{position:relative;bottom:auto;left:auto;right:auto;width:100%;font-size:7px;padding:17px 0;gap:10px}.festival-bottom>span{max-width:135px;line-height:1.7}.festival-bottom .replay-button{font-size:7px}.festival-bottom .scroll-cue{font-size:7px;gap:4px}.festival-bottom .scroll-cue span{font-size:10px}.discovery-tools{padding:22px 20px;border-radius:18px;gap:17px;scroll-margin-top:80px}.tools-intro .eyebrow{font-size:7px}.tools-intro h2{font-size:16px;letter-spacing:-.5px}.tools-intro{flex-basis:70%}.my-checkin{font-size:9px;gap:5px}.home-search{padding:7px 7px 7px 15px;gap:8px}.home-search input{font-size:10px}.home-search button{width:32px;height:32px;font-size:16px}.home-search>span{font-size:26px}.community-discover{margin-top:58px}.records-foot{flex-direction:column;gap:5px;font-size:8px;padding-top:17px}.section-space{margin-top:65px}.section-heading h2{font-size:26px}.section-heading p:not(.eyebrow){font-size:11px}.voice-body{font-size:12px}.home-bottom-grid{gap:40px;margin-top:35px}.home-rank-row>strong{font-size:22px}.home-bottom-grid .section-heading h3{font-size:20px}.annual-teaser{min-height:500px}.annual-teaser-copy h2{font-size:28px}.annual-teaser-copy p:not(.eyebrow){font-size:11px}.journal-teaser{display:flex;flex-direction:column;min-height:0;border-radius:22px;align-items:stretch}.journal-teaser-copy{padding:35px 28px 10px}.journal-teaser-copy h2{font-size:38px;margin:17px 0}.journal-teaser-copy .eyebrow{margin-bottom:14px}.journal-teaser-copy>p:not(.eyebrow){font-size:12px;margin-bottom:23px}.journal-teaser-copy .btn{font-size:11px;padding:10px 20px}.journal-feature-link{max-width:none;font-size:9px;margin-top:18px}.book-stage{height:345px;width:100%}.book-object{width:190px}.book-orbit{font-size:285px;top:35px;left:15px}.book-shadow{width:200px;height:35px;bottom:25px}.kaeto-intro{display:flex;flex-direction:column-reverse;gap:15px;align-items:stretch}.kaeto-copy{padding:0 8px}.kaeto-copy h2{font-size:29px}.kaeto-copy>p:not(.eyebrow){font-size:12px}.kaeto-copy .kaeto-quip{font-size:13px!important}.kaeto-art{height:370px;max-width:100%}.kaeto-art>img{height:360px;width:230px}.kaeto-halo{width:265px;height:265px;top:45px}.stamp-button{font-size:10px}.stamp-result img{width:65px;height:65px}.stamp-result.is-stamped{height:75px}.festival-idea{padding:20px 0 15px}.festival-idea h2{font-size:30px}.festival-idea p:not(.eyebrow){font-size:11px;line-height:2}.idea-star{width:30px;height:30px}.festival-timeline{grid-template-columns:1fr;padding:26px;border-radius:20px;gap:22px;margin-top:35px}.festival-timeline>div{border:0;border-bottom:1px solid #e8dae1;padding:0 0 20px}.festival-timeline>div:nth-child(3){border-bottom:0;padding-bottom:0}.festival-timeline strong{font-size:26px;margin-top:9px}.festival-timeline span{font-size:7px}.festival-timeline p{font-size:10px;margin:7px 0 0}.festival-timeline small{font-size:9px}.format-tabs{gap:7px;margin-bottom:18px}.format-tabs button{font-size:10px;padding:8px 14px}.format-panel{grid-template-columns:1fr;padding:26px;gap:10px;border-radius:20px}.format-number{font-size:40px}.format-panel h3{font-size:23px;line-height:1.45}.format-panel p{font-size:11px}.format-panel .format-types{font-size:10px}.format-panel img{width:170px;height:170px}.submission-guide{grid-template-columns:1fr;padding:35px 5px 0;gap:35px}.submission-guide h3{font-size:23px;line-height:1.45}.submission-guide p{font-size:11px}.festival-faq summary{font-size:12px}.festival-faq details p{font-size:11px}.festival-closing{padding:45px 25px;border-radius:20px;margin-top:65px}.festival-closing h2{font-size:31px}.art-credit{font-size:8px;margin-top:30px}.journal-heading{display:flex;flex-direction:column;align-items:stretch;padding:45px 5px 35px;gap:35px;min-height:0}.journal-heading h1{font-size:38px;letter-spacing:-1.5px;margin:20px 0}.journal-heading p:not(.eyebrow){font-size:12px}.journal-heading .edition-pill{font-size:9px}.journal-heading-book{padding:15px 0 0}.journal-heading-book .book-object{width:190px}.book-caption{margin-top:30px;font-size:7px}.reading-feature{display:flex;flex-direction:column;gap:0;border-radius:20px;align-items:stretch}.reading-feature-art{height:300px;width:100%;display:block}.reading-feature-art img{object-position:center 28%}.reading-feature>div{padding:30px 26px}.reading-feature h2{font-size:34px;margin-bottom:18px}.reading-feature p:not(.eyebrow){font-size:11px}.reading-meta{font-size:9px;margin:18px 0}.reading-feature .btn{font-size:11px;padding:10px 18px}.reading-filters{gap:6px}.reading-filters button{font-size:10px;padding:7px 13px}.reading-grid{grid-template-columns:1fr;gap:24px}.reading-card-copy{padding:23px}.reading-card h3{font-size:22px}.reading-card-copy>p:not(.eyebrow){font-size:12px;min-height:0}.reading-cover{aspect-ratio:1.35}.reader-page .main{padding-left:14px;padding-right:14px}.reader-heading{padding:0 8px;margin-bottom:25px}.reader-back{margin-bottom:26px;font-size:10px}.reader-heading h1{font-size:29px;letter-spacing:-1px}.reader-byline{font-size:9px;gap:11px}.reader-intro{font-size:11px}.reader-toolbar{top:62px;padding:9px 8px;gap:8px;flex-wrap:wrap;margin-bottom:20px;border-radius:11px}.reader-toolbar button{padding:6px 8px;font-size:10px}.reader-page-controls{gap:3px;flex:1}.reader-toolbar select{font-size:9px;padding:5px 2px;max-width:170px}.reader-page-status{display:none}.reader-figure{margin-bottom:25px}.reader-figure figcaption{font-size:9px}.reader-ending{gap:17px;padding-top:20px}.reader-ending p{font-size:11px}.reader-ending .text-link{font-size:10px}.poster-dialog{max-width:96vw;width:96vw}.poster-dialog-top strong{font-size:11px;line-height:1.5}.poster-dialog-top button{font-size:10px;white-space:nowrap}.poster-dialog-image{width:100%}.zoom-tip{font-size:9px;padding:0 12px}.poster-dialog.is-zoomed .poster-dialog-image{width:1200px}.about-heading{padding:50px 5px 30px}.about-heading h1{font-size:34px;letter-spacing:-1px}.about-heading p:not(.eyebrow){font-size:12px}.about-actions{gap:15px}.about-actions .btn{font-size:11px;padding:10px 18px}.about-actions .text-link{font-size:10px}.about-mascot{display:flex;flex-direction:column-reverse;padding:30px 26px 0;border-radius:22px;gap:20px}.about-mascot h2{font-size:29px}.about-mascot p:not(.eyebrow){font-size:11px}.about-kaeto{height:370px;width:100%;-webkit-mask-image:linear-gradient(#000 85%,transparent 100%);mask-image:linear-gradient(#000 85%,transparent 100%)}.mascot-portraits img{width:60px;height:60px}.about-video video{border-radius:14px}.video-meta{font-size:8px}.community-gallery-grid{grid-template-columns:1fr;gap:20px}.community-gallery-grid .gallery-wide{grid-column:auto}.community-gallery-grid img{height:370px}.community-gallery-grid button>span{font-size:10px;padding:16px 18px}.mascot-widget{bottom:15px;right:14px}.mascot-toggle{padding:4px;border-radius:50%}.mascot-toggle img{width:36px;height:36px}.mascot-toggle>span{display:none}.mascot-message{width:220px;bottom:54px}.mascot-message>img{width:110px;height:110px}.mascot-message>p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.festival-stage{transform:none!important}.stage-spark,.ring-b{animation:none}.book-object{transform:rotate(-5deg)!important}.reader-pages.is-turning{animation:none}.stamp-result img{animation:none!important}}
@media(max-width:350px){.journal-heading h1{font-size:32px}.festival-stage:before{right:0;left:0}.stage-ticket{min-width:165px}.reader-toolbar select{max-width:140px}.format-tabs{gap:5px}.format-tabs button{padding:8px 11px}.kaeto-halo{width:240px;height:240px}}

/* Desktop editorial redesign. Content stays visible without animation scripts. */
:root{--brand:#bb2857;--dt-ink:#27232a;--dt-muted:#706a73;--dt-line:#e4dfe1;--wrap:1280px}
body{font-size:15px;color:var(--dt-ink);background:#fff} .nav-link{font-size:13px}.nav{gap:11px}.brand-name{font-size:18px}.footer-inner{font-size:13px}.preview-note{font-size:12px}.text-link{font-size:15px}.eyebrow{font-size:12px}.card-sub,.card-meta{font-size:12px}.page-hint{font-size:15px}
.home-page .main,.festival-page .main,.journal-page .main,.about-page .main{padding-top:0;padding-bottom:80px}.dt-label{font-size:12px;font-weight:650;letter-spacing:2px;line-height:1.6;margin:0 0 20px;color:var(--dt-muted)}.dt-section{margin-top:85px}.dt-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:30px}.dt-heading .dt-label{margin-bottom:10px}.dt-heading h2{font-size:32px;letter-spacing:-1px;line-height:1.35;margin:0}.dt-heading p:not(.dt-label){font-size:15px;line-height:1.8;color:var(--dt-muted);margin:12px 0 0}.dt-heading>.text-link{flex-shrink:0}.dt-inline-links{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;color:var(--brand)}
.dt-home-hero{position:relative;display:grid;grid-template-columns:1.04fr 1fr;min-height:635px;overflow:hidden;background:linear-gradient(115deg,#fffdfb 40%,#fff4f2 100%);padding:65px 46px 74px;margin:0 -20px}.dt-home-copy{position:relative;z-index:2;padding-top:20px}.dt-home-copy h1{font-size:88px;line-height:1.07;letter-spacing:-6px;font-weight:750;margin:0 0 25px;white-space:nowrap;color:#30232e}.dt-home-copy h1>span{font-size:28px;letter-spacing:-1px;border:1px solid #caaaac;border-radius:30px;padding:5px 11px;vertical-align:top;display:inline-block;margin:8px 0 0 15px;color:#a23e61}.dt-home-copy h1 small{display:block;font-size:31px;line-height:1.6;letter-spacing:-1px;font-weight:550;margin-top:18px}.dt-lead{font-size:16px;line-height:1.9;color:var(--dt-muted);margin:0 0 28px}.dt-search{display:flex;background:#fff;border:1px solid #d9c7cb;border-radius:12px;box-shadow:0 8px 30px #692b4310;max-width:460px;overflow:hidden}.dt-search:focus-within{outline:3px solid #f1c7d4}.dt-search input{border:0;background:none;min-width:0;flex:1;padding:17px 20px;font:inherit;color:var(--dt-ink)}.dt-search input:focus{outline:none}.dt-search button{border:0;background:var(--brand);color:white;width:60px;font-size:24px;cursor:pointer;transition:background .2s}.dt-search button:hover{background:#912345}.dt-home-actions{display:flex;gap:28px;margin-top:18px;font-size:14px;color:var(--brand)}.dt-stat-line{display:flex;gap:24px;margin-top:32px;font-size:12px;color:#7b6b72}.dt-stat-line b{font-size:19px;font-weight:500;color:#47313e;margin-right:3px;font-variant-numeric:tabular-nums}
.dt-home-art{position:relative;min-height:490px;transform:translate(var(--pointer-x,0px),var(--pointer-y,0px));transition:transform .6s ease}.dt-kaeto-standing{position:absolute;bottom:-35px;left:80px;width:320px;height:550px;object-fit:contain;z-index:2;filter:drop-shadow(0 15px 15px #b7778620)}.dt-home-orbit{position:absolute;width:450px;height:450px;border:1px solid #e9c5ce;border-radius:50%;top:22px;left:5px;box-shadow:inset 0 0 0 32px #fde9ec80;background:radial-gradient(ellipse,#fff,#ffedf0)}.dt-home-orbit:after{content:"";position:absolute;inset:-25px;border:1px dashed #dec8b580;border-radius:50%}.dt-home-ghost{position:absolute;top:120px;left:-10px;font-size:103px;font-weight:900;letter-spacing:-7px;color:#eebfc738;transform:rotate(-90deg);transform-origin:center}.dt-art-note{position:absolute;z-index:3;right:0;top:32px;font-size:13px;line-height:1.7;color:#9d4966;text-align:right}.dt-art-note small{font-size:11px;color:#8d7882}.dt-floating-note{position:absolute;left:35px;bottom:5px;z-index:3;background:#fffefde8;border:1px solid #ecd1d9;backdrop-filter:blur(12px);border-radius:12px;padding:17px 23px;box-shadow:0 10px 30px #63354315;transform:rotate(-5deg);transition:transform .4s}.dt-floating-note:hover{transform:rotate(0) translateY(-5px)}.dt-floating-note>span{display:block;font-size:11px;color:#947a88;margin-bottom:7px}.dt-floating-note strong{font-size:17px}.dt-star{position:absolute;color:#c2a768;font-size:47px}.dt-star-one{top:30px;left:45px;animation:dt-star-turn 14s linear infinite}.dt-star-two{bottom:120px;right:15px;font-size:60px}.dt-hero-footer{position:absolute;bottom:22px;left:46px;right:46px;display:flex;gap:20px;align-items:center;font-size:12px;color:#887581}.dt-hero-footer>span{flex:1}.dt-hero-footer button{border:0;background:none;color:inherit;cursor:pointer;font:inherit;padding:8px}.dt-hero-footer a{margin-left:25px}
.dt-festival-feature{position:relative;display:flex;align-items:center;gap:30px;background:#37202f;color:#fff;padding:30px 36px;margin-top:28px;overflow:hidden;border-radius:4px;transition:background .3s}.dt-festival-feature:hover{background:#492337}.dt-feature-year{font-size:54px;font-weight:800;letter-spacing:-3px;color:#ed608f}.dt-festival-feature .dt-label{color:#d7a1b6;font-size:10px;margin-bottom:7px}.dt-festival-feature h2{font-size:25px;margin:0 0 8px;letter-spacing:-.7px}.dt-festival-feature p:not(.dt-label){font-size:14px;color:#dec8d4;margin:0}.dt-feature-state{margin-left:auto;display:grid;gap:7px;position:relative;z-index:1}.dt-feature-state>span{font-size:12px;color:#fac1d4}.dt-feature-state small{font-size:12px;color:#ccbac5}.dt-feature-state strong{font-size:14px;margin-top:3px}.dt-feature-star{position:absolute;right:245px;top:-55px;font-size:210px;color:#c6396926}
.dt-work-shelf{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.dt-work-shelf .game-card{border:0;border-radius:0;box-shadow:none;background:none}.dt-work-shelf .cover-box{border-radius:6px;aspect-ratio:3/4;background:#ece5e9;box-shadow:0 10px 20px #44233712}.dt-work-shelf .cover{height:100%;object-fit:cover}.dt-work-shelf .card-body{padding:15px 0 0;gap:6px}.dt-work-shelf .card-title{font-size:15px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;min-height:45px}.dt-work-shelf .card-sub,.dt-work-shelf .card-meta:nth-last-child(2){display:none}.dt-work-shelf .card-meta{font-size:11px;color:#817580}.dt-work-shelf .card-score{font-size:13px}.dt-playing-note{font-size:11px;color:#8b5371;margin:11px 0}.dt-work-shelf .game-card:hover{transform:translateY(-7px);box-shadow:none}
.dt-journal-teaser{display:grid;grid-template-columns:45% 55%;background:#f2efea;min-height:475px;padding:35px 45px;overflow:hidden;border-top:1px solid #e0d8cd;border-bottom:1px solid #e0d8cd}.dt-book-scene{position:relative;perspective:1200px;display:flex;align-items:center;justify-content:center;min-height:400px;isolation:isolate}.dt-book{position:relative;z-index:2;display:block;width:220px;transform:rotate(-8deg) rotateY(-17deg) rotateX(3deg);box-shadow:18px 24px 25px #43334b2e,-5px 0 0 #eee8ea,-7px 0 0 #b5aab2;border-radius:2px;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.dt-book svg{display:block;width:100%;height:auto}.dt-book-scene:hover .dt-book{transform:rotate(-2deg) rotateY(-5deg) translateY(-10px)}.dt-book-pages{position:absolute;width:220px;height:307px;background:repeating-linear-gradient(0deg,#fff 0 2px,#ddd5d8 2px 3px);transform:translate(10px,10px) rotate(-8deg);box-shadow:5px 12px 20px #5441541a}.dt-book-edition{position:absolute;right:14px;top:18px;font-size:11px;letter-spacing:3px;color:#a79281;z-index:-1}.dt-book-edition b{display:block;font-size:132px;line-height:1.2;letter-spacing:-10px;color:#dcd3c7}.dt-editorial-copy{padding:35px 5px 20px 36px}.dt-editorial-copy h2{font-size:33px;letter-spacing:-1px;margin:0 0 18px}.dt-editorial-copy h2>span{display:block;font-size:23px;color:#8e706f;margin-top:9px;font-weight:450}.dt-editorial-copy>p:not(.dt-label){font-size:15px;color:#776963;line-height:1.9;margin-bottom:28px}.dt-editor-pick{display:block;border-top:1px solid #d8cbc1;padding-top:20px;margin-bottom:24px}.dt-editor-pick>span{font-size:11px;color:#846e65}.dt-editor-pick strong{display:block;font-size:22px;margin:8px 0}.dt-editor-pick p{font-size:13px;color:#86776e;margin:0;line-height:1.8}
.dt-notes-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.dt-review{padding:24px 0;border-top:1px solid var(--dt-line)}.dt-review-meta{display:flex;gap:18px;align-items:center;font-size:12px;color:#8b7e87}.dt-review-meta>a{font-size:14px;color:#3d303c}.dt-review-meta b{margin-left:auto;color:#ab285c;font-size:21px;font-weight:600}.dt-review-meta b small{font-size:10px;color:#9e8a95}.dt-review>p{font-size:15px;line-height:1.95;margin:14px 0;color:#574c55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dt-review>.text-link{font-size:13px}.dt-highlights{padding:23px 28px;background:#f8f6f7;border:1px solid #ebe5e8;align-self:start}.dt-highlights h3{font-size:19px;display:flex;justify-content:space-between;margin:0 0 16px;align-items:center}.dt-highlights h3 a{font-size:12px;font-weight:400;color:#925472}.dt-rank-line{display:flex;gap:18px;align-items:center;padding:16px 0;border-top:1px solid #e6dfe4}.dt-rank-line>span{font-size:18px;font-weight:300;color:#ae95a3}.dt-rank-line strong{font-size:14px;font-weight:550;flex:1}.dt-rank-line small{display:block;font-size:11px;color:#968690;font-weight:400;margin-top:5px}.dt-rank-line>b{color:#b12859;font-size:24px;font-weight:450}.dt-recent{font-size:13px;padding-top:15px;border-top:1px solid #e3dce1}.dt-recent summary{cursor:pointer;color:#7a5570}.dt-recent .activity{font-size:12px}
.dt-annual-teaser{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px;background:#17151a;color:#fff;padding:50px 50px;position:relative;overflow:hidden;border-left:7px solid #dc244b}.dt-annual-teaser:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 50%,#be163c22 50%)}.dt-annual-teaser>div{position:relative}.dt-annual-teaser .dt-label{color:#da7895;font-size:11px}.dt-annual-year{font-size:19px;color:#be8798;letter-spacing:6px}.dt-annual-teaser h2{font-size:58px;margin:6px 0 17px;letter-spacing:-3px}.dt-annual-teaser p:not(.dt-label){font-size:15px;line-height:1.8;color:#c3b9c0}.dt-annual-teaser .btn{margin-top:10px}.dt-annual-images{display:flex;gap:12px;align-items:center}.dt-annual-images>div{width:33.33%;height:240px;position:relative;border:1px solid #6b4757;transform:rotate(5deg);transition:transform .5s}.dt-annual-images>div:nth-child(2){transform:translateY(-20px) rotate(-5deg)}.dt-annual-images>div:nth-child(3){transform:translateY(15px) rotate(8deg)}.dt-annual-teaser:hover .dt-annual-images>div{transform:rotate(0) translateY(0)}.dt-annual-images svg{width:100%;height:100%;object-fit:cover;background:#30212c}.dt-annual-images>div>span{position:absolute;left:8px;top:0;font-size:44px;font-weight:800;color:#fff;text-shadow:1px 2px 8px #000;z-index:2}
.dt-community-end{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}.dt-community-window{display:block;position:relative;overflow:hidden;border-radius:4px}.dt-community-window img{width:100%;height:auto;display:block;transition:transform 1s}.dt-community-window:hover img{transform:scale(1.035)}.dt-community-window>span{position:absolute;bottom:0;left:0;right:0;padding:20px 24px;color:#fff;background:linear-gradient(transparent,#302021c9);font-size:15px}.dt-community-end h2{font-size:31px;line-height:1.45;letter-spacing:-1px;margin:0 0 18px}.dt-community-end p:not(.dt-label){font-size:15px;line-height:1.9;color:#7e6f7b;margin-bottom:24px}.dt-community-end .dt-inline-links{gap:18px;font-size:13px}
/* An independent festival stage, separate from the community hero. */
.festival-page{background:#fffafb}.dt-event-stage{position:relative;min-height:730px;display:grid;grid-template-columns:1.05fr 1fr;gap:30px;overflow:hidden;background:#25101f;color:white;margin:0 -20px;padding:60px 55px 80px}.dt-stage-grid{position:absolute;inset:0;background:radial-gradient(ellipse at 90% 70%,#b1195d88,transparent 65%),repeating-linear-gradient(135deg,transparent 0 60px,#ffb2d106 61px 62px)}.dt-event-copy{position:relative;z-index:2}.dt-event-copy .dt-label{color:#cba4b7;font-size:10px;max-width:440px}.dt-event-status{display:inline-block;border:1px solid #be6083;border-radius:30px;padding:6px 14px;font-size:12px;color:#ffb7d2}.dt-event-year{font-size:92px;font-weight:800;letter-spacing:-5px;line-height:1;margin:25px 0 17px;color:#ec608d}.dt-event-copy h1{font-size:64px;line-height:1.17;letter-spacing:-3px;margin:0 0 26px;font-weight:750}.dt-event-copy h1 span{color:#fff0f6}.dt-event-lead{font-size:15px;line-height:1.9;color:#d7bdcb;margin:0 0 28px}.dt-event-actions{display:flex;align-items:center;gap:20px}.dt-event-actions button{color:#efb8d0;background:none;border:0;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}.dt-event-date{font-size:12px;line-height:1.8;color:#e2a9c0;margin:24px 0 0}.dt-event-date>span{display:block;color:#af8c9f;font-size:11px}.dt-event-art{position:relative;transform:translate(var(--pointer-x,0px),var(--pointer-y,0px));transition:transform .6s;min-width:0}.dt-event-paper{position:absolute;left:12px;right:10px;top:18px;bottom:-12px;background:#fff8fa;transform:rotate(7deg);box-shadow:20px 20px 0 #9d254658,0 15px 50px #0004;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 96%,92% 100%,0 100%)}.dt-event-paper img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;mix-blend-mode:multiply}.dt-event-art-label{position:absolute;right:0;bottom:22px;z-index:3;background:#ea245d;color:white;padding:16px 22px;transform:rotate(-7deg);font-size:30px;font-weight:700;letter-spacing:3px;box-shadow:7px 7px 0 #180c1780}.dt-event-art-label b{display:block;font-size:10px;letter-spacing:1px;margin-top:5px}.dt-stage-star{position:absolute;top:-25px;right:-20px;font-size:120px;color:#f6b8d3}.dt-event-foot{position:absolute;bottom:22px;left:55px;right:55px;display:flex;justify-content:space-between;font-size:11px;color:#c08aa4}.festival-page .festival-idea{margin-top:55px;padding:35px 0 20px;text-align:left;max-width:none}.festival-idea h2{font-size:32px;margin:0 0 20px}.festival-idea>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#7e6574;max-width:850px}.festival-idea .idea-star{display:none}.festival-timeline{margin-top:25px;border-radius:0;background:#f5e9ee;border-color:#e2c6d2;padding:30px}.festival-timeline>div{border-color:#dfc6d2}.festival-timeline strong{font-size:26px;color:#662641}.festival-timeline p{font-size:14px;color:#866275}.festival-timeline>small{font-size:12px;color:#846979}.festival-page #participate{margin-top:70px}.festival-page .section-heading h2{font-size:32px}.festival-page .section-heading p{font-size:15px}.format-tabs button{font-size:15px;padding:16px 26px}.format-panel{border-radius:0;background:#f8edf2;min-height:340px}.format-panel h3{font-size:29px}.format-panel p{font-size:15px;line-height:1.9}.format-panel .format-types{font-size:13px;color:#a94873}.format-panel img{max-height:250px;object-fit:contain}.submission-guide{border-radius:0;border-top:2px solid #cda2b5;background:#fff;margin-top:40px;padding:35px}.submission-guide h3{font-size:25px}.submission-guide p,.festival-faq p{font-size:15px;line-height:1.9;color:#7f6a77}.festival-faq summary{font-size:15px}.copy-feedback{font-size:13px}.festival-closing{background:#381a2c;border-radius:0;color:#fff;padding:50px;margin-top:65px}.festival-closing h2{font-size:38px;color:#fff}.festival-closing .eyebrow,.festival-closing .art-credit{color:#ce9ab1}.festival-closing .text-link{color:#ffb8d5}.festival-closing .art-credit{font-size:12px}
/* A paper-and-ink reading room with a real table of contents. */
.journal-page{background:#fbf9f5}.dt-journal-heading{display:grid;grid-template-columns:1.15fr .85fr;padding:55px 35px 30px;border-bottom:1px solid #d8cfc4;align-items:center;min-height:460px}.dt-journal-heading h1{font-size:76px;line-height:1.15;letter-spacing:-4px;margin:0 0 25px;font-weight:700}.dt-journal-heading h1 span{display:block;font-size:46px;color:#8a646d;letter-spacing:-2px;margin-top:12px;font-weight:450}.dt-journal-heading p:not(.dt-label){font-size:16px;line-height:1.9;color:#81716c;margin:0 0 26px}.dt-journal-heading .dt-book{width:210px}.dt-editor-feature{position:relative;display:grid;grid-template-columns:38% 62%;align-items:center;gap:0;overflow:hidden;background:#e8edf0;margin-top:42px;min-height:390px}.dt-feature-page{display:block;overflow:hidden;margin:28px 50px;box-shadow:10px 12px 20px #23424c20;height:330px;transform:rotate(-4deg);transition:transform .5s;z-index:1}.dt-feature-page:hover{transform:rotate(0)}.dt-feature-page img{width:100%;height:100%;object-fit:cover;object-position:top}.dt-editor-feature>div{padding:35px 85px 35px 20px;z-index:1}.dt-editor-feature h2{font-size:40px;line-height:1.3;letter-spacing:-1.5px;margin:0 0 17px;color:#294b59}.dt-editor-feature p:not(.dt-label){max-width:400px;font-size:16px;line-height:1.9;color:#637580;margin:0 0 18px}.dt-article-meta{display:block;font-size:12px;color:#78909b;margin-bottom:24px}.dt-feature-print{position:absolute;bottom:-15px;right:-10px;font-size:104px;line-height:.9;font-weight:900;letter-spacing:-6px;color:#cfdce1;pointer-events:none}.dt-contents{border-top:2px solid #6e565d}.dt-content-row{display:grid;grid-template-columns:54px 110px minmax(0,1fr) 130px;gap:30px;align-items:center;padding:28px 12px;border-bottom:1px solid #d9cec8;transition:background .3s}.dt-content-row:hover{background:#f4ede5}.dt-content-no{font-size:28px;font-weight:350;color:#a28b80}.dt-content-thumbnail{display:block;height:130px;overflow:hidden;background:#ece2df}.dt-content-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}.dt-content-row:hover img{transform:scale(1.06)}.dt-content-text>span{font-size:12px;color:#a1737f}.dt-content-text h3{font-size:23px;letter-spacing:-.6px;margin:9px 0}.dt-content-text p{font-size:14px;line-height:1.8;color:#877770;margin:0;max-width:610px}.dt-content-page{display:flex;align-items:center;justify-content:space-between;color:#8f747b;font-size:13px}.dt-content-page small{display:block;font-size:11px;margin-top:6px;color:#a48e8d}.dt-content-page b{font-size:24px;font-weight:400}.reading-filters{margin-bottom:24px}.reading-filters button{font-size:14px;padding:11px 22px}.dt-source-note{font-size:13px;color:#867c7e;line-height:1.9;margin:28px 0 0}.reader-heading,.reader-figure{max-width:1000px}.reader-intro{font-size:16px;line-height:1.95;max-width:850px;color:#70616d}.reader-back,.reader-byline{font-size:14px}.reader-toolbar select,.reader-toolbar button{font-size:14px}.reader-page-status,.reader-figure figcaption{font-size:12px}.reader-page-image{border-radius:0}.reader-pages.is-turning{animation:dt-page-turn .55s both;transform-origin:left center}
/* A gallery of the community's own artwork. */
.dt-about-heading{padding:70px 35px 50px}.dt-about-heading h1{font-size:68px;letter-spacing:-3px;margin:0 0 25px;line-height:1.25}.dt-about-heading h1 span{color:#ab5172}.dt-about-heading>p:not(.dt-label){font-size:16px;line-height:1.9;color:#887280}.dt-mascot-profile{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center;padding:40px 60px;background:#fcf0f1;border:1px solid #efdee0;position:relative;overflow:hidden;min-height:470px}.dt-mascot-art{position:relative;min-height:390px}.dt-mascot-art img{height:400px;width:100%;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(12px 14px 10px #ad638316)}.dt-mascot-art>span{position:absolute;bottom:15px;left:-10px;font-size:91px;font-weight:900;letter-spacing:-7px;color:#edc3ce}.dt-mascot-profile h2{font-size:44px;letter-spacing:-2px;margin:0 0 20px}.dt-mascot-profile h2 span{font-size:14px;letter-spacing:4px;color:#ac7d8f;margin-left:20px}.dt-mascot-profile p:not(.dt-label){font-size:15px;line-height:1.9;color:#8f687c}.dt-mascot-profile .stamp-button{margin-top:20px;font-size:14px}.dt-mascot-profile .stamp-result{position:absolute;bottom:18px;right:35px;max-width:190px}.dt-mascot-profile .stamp-result img{width:85px}.dt-mascot-profile .stamp-result span{font-size:11px}.about-video video{border-radius:4px}.dt-art-gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;align-items:start}.dt-gallery-item{display:block;text-align:left;padding:0;border:0;background:#f8f5f6;color:#453140;cursor:zoom-in;overflow:hidden;grid-column:span 3}.dt-gallery-item img{width:100%;height:320px;object-fit:cover;object-position:center;display:block;transition:transform .8s}.dt-gallery-item:hover img{transform:scale(1.04)}.dt-gallery-item>span{position:relative;display:block;padding:18px 20px;background:#faf7f8}.dt-gallery-item small{font-size:10px;letter-spacing:2px;color:#ab8d9e;display:block;margin-bottom:8px}.dt-gallery-item strong{font-size:15px;font-weight:500;display:flex;justify-content:space-between}.dt-gallery-2,.dt-gallery-3,.dt-gallery-4{grid-column:span 2}.dt-gallery-2 img,.dt-gallery-3 img,.dt-gallery-4 img{height:370px;object-position:top}.dt-gallery-5{grid-column:1/-1}.dt-gallery-5 img{height:auto;aspect-ratio:2.4;object-position:center}
/* Black-and-red annual honors, matching the original visual identity. */
.annual-page{background:#17151a;color:#f9edf1}.annual-page .main{color:inherit}.annual-page .topbar{background:#211b21ed;border-color:#4e3443}.annual-page .nav-link{color:#cdb7c4}.annual-page .nav-link.is-active{color:#ff749c}.annual-page .brand-name,.annual-page .nav-search{color:#fff}.annual-page .footer{background:#1f1820;border-color:#4a303d;color:#ba9fac}.annual-page .footer-note,.annual-page .footer-tagline,.annual-page .preview-note{color:#b69caa}.annual-heading{min-height:450px;padding-top:75px}.annual-heading h1{font-size:92px;letter-spacing:-5px}.annual-heading h1>span{color:#e83662}.annual-heading-sub{font-size:22px;color:#cbb0bf}.annual-heading .eyebrow{color:#c68c9f}.annual-heading-meta{font-size:13px;color:#d0acbd}.annual-ghost-year{color:#3d2532}.annual-scroll{font-size:14px;color:#e699b0}.podium-feature{background:#251b23;border-radius:0;border:1px solid #573042;border-left:6px solid #d52853}.podium-feature:nth-child(2){background:#241e22}.podium-number{color:#633047}.podium-copy h2{color:#fff;font-size:38px}.podium-copy h2>span{color:#cb94ab;font-size:23px}.podium-copy .eyebrow,.podium-caption{color:#c88ea5}.round-results{border-color:#593747}.round-results>span{color:#b793a4;font-size:12px}.round-results strong{color:#f3c7d7}.podium-art{border-radius:0;transform:rotate(2deg);box-shadow:10px 10px 0 #ad1e4444;transition:transform .6s}.podium-feature:hover .podium-art{transform:rotate(0) translateY(-5px)}.podium-image-caption{background:#191219d9;color:#f8c1d4}.annual-page .section-heading h2{color:#fff}.annual-page .section-heading p,.annual-page .eyebrow{color:#c394aa}.annual-page .finalists-count{color:#f2779b}.finalist-card{background:#211a20;border:1px solid #583546;border-radius:0;box-shadow:none}.finalist-card:hover{border-color:#e03b69;box-shadow:8px 8px 0 #ae20422b}.finalist-image{border-radius:0}.finalist-number{background:#d82652;color:#fff;border-radius:0}.finalist-body h3{color:#fff}.finalist-body p,.finalist-body small{color:#c9a4b7;font-size:12px}.finalist-link{color:#f898b9;font-size:13px}.series-badge{color:#f9abc6;background:#4a2335;border-color:#714153}.archive-poster{background:#251a23;border-color:#633146;border-radius:0}.archive-poster>span{color:#f7b4cf}.annual-closing p{color:#e9c4d5}.annual-page .poster-dialog{color:#372230;background:white}.annual-page .poster-dialog-top{background:white}
.dt-home-hero,.dt-event-stage{margin-left:0;margin-right:0}
.annual-page .annual-heading h1>span:first-child{color:#ed325f}.festival-timeline>div>span{font-size:11px}.submission-guide .btn{font-size:14px}.poster-dialog-top strong{font-size:15px}.zoom-tip{font-size:12px}
.game-page .score-distribution{font-size:13px;color:#8c6d7f;align-self:start}.score-distribution summary{cursor:pointer;padding:9px 0}.score-distribution .bars{margin-top:12px}.game-page .game-score-block{grid-template-columns:130px minmax(0,1fr);align-items:start}.game-page .game-score-block:has(.score-distribution[open]){align-items:center}.podium-art{clip-path:inset(0);transition:clip-path 1.1s cubic-bezier(.2,.7,.2,1),transform .6s}.motion-ready .podium-feature.reveal-pending .podium-art{clip-path:inset(0 100% 0 0)}
.game-page .meta-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px}.game-page .staff-details{grid-column:1/-1}
@media(max-width:850px){.game-page .meta-list{grid-template-columns:1fr}}
.work-quick-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-bottom:10px}.work-quick-actions .panel{padding:24px}.work-quick-actions .panel-head h2{font-size:20px}.work-quick-actions .rate-stars{gap:5px}.work-quick-actions .star{width:36px;height:36px;min-width:0;font-size:15px}.work-quick-actions .rate-row{flex-wrap:wrap}.staff-details{padding-top:12px;border-top:1px solid var(--dt-line);margin-top:8px}.staff-details summary{font-size:14px;color:#986a83;cursor:pointer;margin-bottom:12px}.game-page .introduction{font-size:16px;line-height:1.95}.game-page .meta-row{font-size:14px}.game-page .game-head{gap:35px}.game-page .game-score-block{margin-bottom:20px}.game-page .report-row{font-size:12px}.game-page .review-body{font-size:15px;line-height:1.95}
@media(max-width:850px){.work-quick-actions{grid-template-columns:1fr}}
/* Short opening: unstyled/native dialog is closed if JavaScript fails. */
.dt-opening{position:fixed;inset:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;background:#fff9f6;color:#482c40;overflow:hidden;z-index:200}.dt-opening::backdrop{background:#fff9f6}.dt-skip{position:absolute;top:30px;right:40px;background:#fff8;border:1px solid #c99fac;border-radius:30px;padding:11px 23px;color:#8b4866;font:inherit;font-size:13px;cursor:pointer;z-index:5}.dt-opening-orbit{position:absolute;left:50%;top:50%;width:570px;height:570px;border:1px solid #ebcfca;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 55px #f8e4e438,0 0 0 120px #f8e4e418}.dt-opening-face{position:absolute;left:calc(50% - 265px);top:calc(50% - 205px);width:225px;height:225px;overflow:hidden;border-radius:50%;background:#fff1f4;box-shadow:0 20px 45px #92517220;border:6px solid #fff;animation:dt-face-in .9s cubic-bezier(.16,1,.3,1) both}.dt-opening-face img{display:block;width:100%;height:100%;object-fit:cover;transform:rotate(-8deg)}.dt-opening-word{position:absolute;left:calc(50% - 15px);top:calc(50% - 65px);animation:dt-word-in .7s .35s both}.dt-opening-word h2{font-size:66px;line-height:1.2;margin:12px 0 18px;letter-spacing:-4px}.dt-opening-word h2 span{font-size:24px;letter-spacing:-1px;margin-left:15px;color:#b84874}.dt-opening-word p:first-child{font-size:10px;letter-spacing:3px;color:#bd8a96}.dt-opening-word p:last-child{font-size:16px;color:#9a6782}.dt-opening-stamp{position:absolute;left:calc(50% + 180px);top:calc(50% + 80px);width:95px;height:95px;animation:dt-stamp-in .6s .9s both;opacity:.65}.dt-opening.is-leaving{animation:dt-opening-out .45s forwards}.dt-opening-open{overflow:hidden}
@keyframes dt-face-in{from{opacity:0;transform:translateY(75px) scale(.4) rotate(-20deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes dt-word-in{from{opacity:0;transform:translateY(20px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes dt-stamp-in{0%{transform:scale(2) rotate(-15deg);opacity:0}65%{transform:scale(.9) rotate(-12deg);opacity:.75}100%{transform:scale(1) rotate(-12deg);opacity:.65}}@keyframes dt-opening-out{to{opacity:0;transform:scale(1.05)}}@keyframes dt-star-turn{to{transform:rotate(360deg)}}@keyframes dt-page-turn{from{opacity:.4;transform:perspective(1200px) rotateY(-6deg) translateX(15px)}to{opacity:1;transform:none}}
@media(min-width:1100px){.dt-event-stage .hero-enter{animation:dt-word-in .8s both}.dt-event-stage .dt-event-year{animation-delay:.1s}.dt-event-stage h1{animation-delay:.2s}.dt-event-stage .dt-event-lead{animation-delay:.3s}.dt-event-stage .dt-event-actions{animation-delay:.4s}.dt-event-paper{animation:dt-stage-paper 1.1s cubic-bezier(.16,1,.3,1) both}.dt-event-art-label{animation:dt-stage-label .8s .3s both}@keyframes dt-stage-paper{from{opacity:0;transform:translateY(80px) rotate(15deg)}to{opacity:1;transform:translateY(0) rotate(7deg)}}@keyframes dt-stage-label{from{opacity:0;transform:translateX(60px) rotate(-7deg)}to{opacity:1;transform:translateX(0) rotate(-7deg)}}}
@media(max-width:1150px){.dt-home-copy h1{font-size:72px}.dt-home-copy h1 small{font-size:27px}.dt-home-hero{padding-left:30px;padding-right:30px}.dt-kaeto-standing{left:60px}.dt-home-orbit{width:390px;height:390px}.dt-event-copy h1{font-size:56px}.dt-event-stage{padding-left:35px;padding-right:35px}.dt-content-row{gap:22px}}
@media(max-width:850px){.dt-home-hero,.dt-journal-teaser,.dt-notes-grid,.dt-annual-teaser,.dt-community-end,.dt-event-stage,.dt-journal-heading,.dt-editor-feature,.dt-mascot-profile{grid-template-columns:1fr}.dt-home-hero{margin:0;padding:40px 20px 60px}.dt-home-art{display:none}.dt-home-copy h1{font-size:58px}.dt-home-copy h1 small{font-size:24px}.dt-home-copy h1>span{font-size:20px}.dt-hero-footer{left:20px;right:20px;font-size:10px}.dt-feature-year{display:none}.dt-festival-feature{padding:24px;gap:20px;flex-wrap:wrap}.dt-feature-state{margin-left:0}.dt-work-shelf{grid-template-columns:repeat(3,minmax(0,1fr))}.dt-section{margin-top:55px}.dt-heading{align-items:start;flex-wrap:wrap}.dt-heading h2{font-size:26px}.dt-journal-teaser{padding:25px}.dt-editorial-copy{padding:25px 0}.dt-community-end{gap:25px}.dt-annual-teaser{padding:35px 25px}.dt-annual-images>div{height:180px}.dt-event-stage{margin:0;padding:40px 25px 70px;gap:20px}.dt-event-art{height:450px}.dt-event-copy h1{font-size:54px}.dt-event-year{font-size:70px}.dt-event-foot{left:25px;right:25px;font-size:10px}.dt-event-actions{flex-wrap:wrap}.dt-content-row{grid-template-columns:35px 70px minmax(0,1fr);gap:15px;padding:20px 0}.dt-content-thumbnail{height:90px}.dt-content-page{grid-column:3;justify-content:start;gap:20px}.dt-content-text h3{font-size:18px}.dt-content-text p{font-size:12px}.dt-journal-heading{padding:40px 20px}.dt-journal-heading h1{font-size:55px}.dt-journal-heading h1 span{font-size:35px}.dt-feature-page{width:210px;margin:25px auto}.dt-editor-feature>div{padding:25px}.dt-about-heading{padding:40px 10px}.dt-about-heading h1{font-size:42px}.dt-mascot-profile{padding:25px;gap:20px}.dt-art-gallery{grid-template-columns:1fr 1fr;gap:15px}.dt-gallery-item,.dt-gallery-2,.dt-gallery-3,.dt-gallery-4{grid-column:span 1}.dt-gallery-item img{height:230px}.dt-gallery-5{grid-column:1/-1}.dt-opening-face{left:calc(50% - 85px);top:calc(50% - 190px);width:170px;height:170px}.dt-opening-word{left:20px;right:20px;top:calc(50% + 10px);text-align:center}.dt-opening-word h2{font-size:50px}.dt-opening-stamp{left:calc(50% + 80px);top:calc(50% + 120px)}.dt-skip{top:20px;right:20px}}
.community-video-link{padding:36px;background:#faf2f5;border:1px solid #ecdbe3;border-radius:8px}.community-video-link p{margin:0 0 18px;line-height:1.8}.community-video-link>p:last-child{margin-bottom:0}.dt-opening-face{animation-duration:.6s}.dt-opening-word{animation-duration:.45s;animation-delay:.2s}.dt-opening-stamp{animation-duration:.35s;animation-delay:.6s}.dt-opening.is-leaving{animation-duration:.25s}
@media(prefers-reduced-motion:reduce){.dt-opening *,.dt-event-stage *,.reader-pages.is-turning{animation:none!important}.dt-star-one{animation:none}.dt-book,.dt-home-art,.dt-event-art,.dt-annual-images>div,.dt-floating-note,.podium-art,.dt-gallery-item img{transform:none!important;transition:none!important}.dt-opening.is-leaving{animation:none}.dt-opening-orbit{box-shadow:none}.dt-opening-face,.dt-opening-word,.dt-opening-stamp{opacity:1}}

/* Work library: quiet reading surfaces, complete covers and useful save points. */
.member-avatar{width:26px;height:26px;display:inline-block;object-fit:contain;flex:none;vertical-align:middle;border-radius:50%;background:#fff1f3;border:1px solid #f0dce2}.nav-user .nav-link,.user-link{display:inline-flex;align-items:center;gap:7px}.avatar{overflow:hidden;background:#fff1f3!important}.avatar img{width:100%;height:100%;object-fit:contain}.dt-review-meta .member-avatar{width:30px;height:30px}.cover-box .cover,.rank-cover img,.cover-sm .cover{object-fit:contain;background:#f0ebed}.dt-work-shelf .cover-box{background:#efe8ee}.dt-annual-images>div img{width:100%;height:100%;object-fit:contain;background:#f9f7f3}.dt-annual-images>div{overflow:visible}.dt-gallery-6,.dt-gallery-7,.dt-gallery-8{grid-column:span 2}.dt-gallery-6 img,.dt-gallery-7 img,.dt-gallery-8 img{height:530px;object-fit:contain;background:#f2edf1}.dt-gallery-9{grid-column:1/-1}.dt-gallery-9 img{height:auto;max-height:580px;object-fit:contain}.dt-gallery-item:focus-visible{outline:3px solid #b94876;outline-offset:5px}
.wd-page{--wd-ink:#372e3c;--wd-muted:#817484;--wd-line:#e9e3e9;--wd-accent:#ac4268;color:var(--wd-ink);padding:5px 0 40px}.wd-breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--wd-muted);margin:0 0 24px}.wd-breadcrumb>span:last-of-type{max-width:50%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wd-back{margin-left:auto}.wd-overview{display:grid;grid-template-columns:220px minmax(0,1fr) 300px;gap:32px;align-items:start}.wd-cover{display:flex;position:relative;align-items:center;justify-content:center;width:100%;height:308px;padding:14px;border:1px solid var(--wd-line);border-radius:5px;background:linear-gradient(145deg,#f7eff2,#e8e8ef);cursor:zoom-in;overflow:hidden}.wd-cover img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 9px #44354a22);transition:transform .55s cubic-bezier(.2,.7,.3,1)}.wd-cover:hover img{transform:scale(1.025)}.wd-cover-zoom{position:absolute;bottom:10px;right:10px;font-size:10px;color:#5e475c;background:#fffffff0;border-radius:3px;padding:4px 8px;opacity:0;transition:opacity .2s}.wd-cover:hover .wd-cover-zoom,.wd-cover:focus-visible .wd-cover-zoom{opacity:1}.wd-cover-column>small{display:block;text-align:center;font-size:10px;color:var(--wd-muted);margin-top:12px;letter-spacing:1px}.wd-eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--wd-accent);margin:1px 0 15px}.wd-identity h1{font-size:30px;line-height:1.35;letter-spacing:-.8px;margin:0 0 10px;overflow-wrap:anywhere}.wd-original{font-size:13px;line-height:1.7;color:var(--wd-muted);margin:0;overflow-wrap:anywhere}.wd-alias{font-size:11px;color:var(--wd-muted);margin:8px 0}.wd-alias summary{cursor:pointer}.wd-badges{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.wd-badges>span{font-size:10px;line-height:1.3;padding:5px 8px;background:#f2edf3;border:1px solid #eee4ed;border-radius:4px;color:#716176}.wd-facts{margin:20px 0 22px;display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:20px}.wd-facts dt{font-size:11px;color:var(--wd-muted);margin-bottom:5px}.wd-facts dd{font-size:14px;margin:0;line-height:1.5;overflow-wrap:anywhere}.wd-community-score{display:flex;justify-content:space-between;align-items:center;position:relative;border-top:1px solid var(--wd-line);padding:16px 0 14px;gap:10px}.wd-community-score>div{display:flex;gap:14px;align-items:center}.wd-community-score strong{font-size:43px;line-height:1;font-weight:750;letter-spacing:-2px}.wd-community-score>div>span{font-size:11px;color:#756579}.wd-community-score small{display:block;font-size:10px;margin-top:4px;color:var(--wd-muted)}.wd-score-details summary{font-size:10px;cursor:pointer;white-space:nowrap;color:var(--wd-accent)}.wd-score-details[open] .bars{position:absolute;top:90%;right:0;width:260px;background:white;padding:20px;border:1px solid var(--wd-line);box-shadow:0 8px 25px #38263715;z-index:6;border-radius:6px}.wd-counts{display:flex;gap:18px;font-size:10px;color:var(--wd-muted)}.wd-counts b{font-size:13px;margin-right:5px;color:#57425a}.wd-source-links{display:flex;gap:18px;margin:22px 0 0;font-size:11px;color:var(--wd-accent)}.wd-media-note{font-size:10px;line-height:1.7;color:var(--wd-muted);max-width:380px;margin:10px 0 0}.wd-record{border:1px solid #e7dce5;border-top:3px solid #ba6887;background:#fffdfc;padding:20px;border-radius:3px;box-shadow:0 7px 30px #64516405;min-height:330px}.wd-record-heading{display:flex;align-items:center;gap:10px;margin-bottom:18px}.wd-record-heading img{background:#fff1f4;border-radius:50%;object-fit:contain}.wd-record-heading p{font-size:8px;letter-spacing:1.4px;color:#b77a93;margin:0 0 3px}.wd-record-heading h2{font-size:17px;margin:0}.wd-record section+section{margin-top:18px;padding-top:16px;border-top:1px solid var(--wd-line)}.wd-record h3{font-size:12px;margin:0 0 10px;display:flex;align-items:center;justify-content:space-between}.wd-record h3 small{font-size:9px;color:var(--wd-muted);font-weight:400}.wd-record .rate-row{display:block}.wd-record .rate-stars{display:grid;grid-template-columns:repeat(10,1fr);gap:3px;width:100%}.wd-record .star{min-width:0;width:100%;height:28px;padding:0;border-radius:3px;font-size:11px;border:1px solid #ebdce6;background:#faf5f8;box-shadow:none}.wd-record .star.on,.wd-record .star.hover{background:#af496f;color:#fff;border-color:#af496f;transform:translateY(-2px)}.wd-record .rate-hint{font-size:10px;margin:9px 0 12px}.wd-record .rate-hint strong{font-weight:500}.wd-record .form-actions{margin:0;gap:8px}.wd-record .form-actions .btn{padding:7px 12px;font-size:10px;min-height:0}.wd-record .input{font-size:11px;padding:8px 10px;min-height:34px}.wd-note-label{font-size:10px;display:block;color:var(--wd-muted);margin-bottom:6px}.wd-record .checkin-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:10px 0 0}.wd-record .btn-status{font-size:10px;padding:7px 2px;border-radius:3px;min-height:0}.wd-record .btn-status.is-on{background:#af496f;color:white;border-color:#af496f}.wd-record .checkin-buttons>.btn-ghost{font-size:9px;padding:2px 0;grid-column:4;border:0;min-height:0;color:#978590}.wd-current-status{font-size:10px;line-height:1.7;color:#805970;margin:5px 0 0;overflow-wrap:anywhere}.wd-current-status small{display:block;font-size:9px;color:var(--wd-muted)}.wd-login-note{font-size:12px;line-height:1.9;color:var(--wd-muted)}.wd-record .btn-block{font-size:12px;min-height:0;padding:11px;margin-top:20px}.wd-register-link{display:block;text-align:center;color:var(--wd-accent);font-size:10px;margin-top:12px}.wd-visitor{display:block;width:90px;height:125px;object-fit:contain;margin:17px auto 0}.wd-section-nav{display:flex;gap:32px;margin:30px 0 0;padding:16px 0;border-top:1px solid var(--wd-line);border-bottom:1px solid var(--wd-line);font-size:12px;color:#826776;position:sticky;top:62px;z-index:5;background:#fcfaf8f5;backdrop-filter:blur(16px)}.wd-section-nav span{font-size:9px;margin-left:5px;padding:2px 5px;border-radius:3px;background:#f1e7ec}.wd-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;margin-top:32px}.wd-section{scroll-margin-top:125px;margin-bottom:42px;padding-bottom:36px;border-bottom:1px solid var(--wd-line)}.wd-section-title>span{font-size:9px;color:#bd8a9d;letter-spacing:2px}.wd-section-title h2{font-size:23px;letter-spacing:-.5px;margin:7px 0 20px}.wd-section-title h2 small{font-size:11px;font-weight:400;color:var(--wd-muted);margin-left:10px}.wd-section-title p{font-size:11px;color:var(--wd-muted);margin:-10px 0 18px}.wd-introduction{font-size:15px;line-height:2.05;overflow-wrap:anywhere;color:#635767;max-width:740px}.wd-long-intro{display:flex;flex-direction:column}.wd-long-intro summary{font-size:12px;color:var(--wd-accent);padding:9px 0;cursor:pointer}.wd-long-intro summary span{font-size:10px;float:right;color:var(--wd-muted)}.wd-intro-preview{font-size:15px;line-height:2.05;color:#635767}.wd-long-intro[open]+.wd-intro-preview{display:none}.wd-screenshots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.wd-screenshots button{position:relative;border:1px solid var(--wd-line);padding:0;overflow:hidden;border-radius:3px;background:#f0edf2;cursor:zoom-in}.wd-screenshots img{display:block;width:100%;height:160px;object-fit:contain;transition:transform .4s}.wd-screenshots button:hover img{transform:scale(1.025)}.wd-screenshots button span{position:absolute;bottom:7px;right:8px;font-size:9px;background:#fff9;padding:3px 6px;border-radius:3px}.wd-information{scroll-margin-top:120px}.wd-side-section{padding:0 0 22px;margin:0 0 24px;border-bottom:1px solid var(--wd-line)}.wd-side-section h2,.wd-side-section>summary{font-size:14px;margin:0 0 14px;font-weight:650}.wd-side-section>summary{cursor:pointer}.wd-side-section>summary span{float:right;color:var(--wd-muted);font-size:11px}.wd-cast-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wd-cast-grid .cast{border:0;display:block;text-align:center;padding:0;background:#f7f3f5;border-radius:4px;overflow:hidden}.wd-cast-grid .cast-img{width:100%;height:105px;object-fit:contain;background:#efe9ef;display:block;margin:0}.wd-cast-grid .cast-body{padding:9px 4px}.wd-cast-grid .cast-name{font-size:10px;line-height:1.5}.wd-cast-grid .cast-cv{font-size:9px;color:var(--wd-muted);line-height:1.5;margin-top:3px}.wd-side-section .meta-row{display:block;font-size:11px;padding:6px 0;line-height:1.8}.wd-side-section .meta-key{display:block;color:var(--wd-muted);font-size:9px;width:auto}.wd-side-section .meta-val{display:block}.wd-side-section .panel{box-shadow:none;border:0;background:none;padding:0;margin:0}.wd-side-section .panel-head{display:none}.wd-side-section .release{font-size:11px;display:block;padding:8px 0;border-bottom:1px solid #ece5ec}.wd-side-section .release-name{display:block;line-height:1.6;margin-bottom:3px}.wd-side-section .release .muted{font-size:9px;line-height:1.6;display:block}.wd-side-section .link-chip{font-size:10px}.wd-related{display:grid}.wd-related a{font-size:11px;line-height:1.7;padding:8px 0;display:flex;justify-content:space-between;gap:10px;border-bottom:1px dotted var(--wd-line)}.wd-related span{color:var(--wd-accent)}.wd-raters{list-style:none;padding:0;margin:0}.wd-raters li{display:flex;align-items:center;justify-content:space-between;font-size:11px;padding:8px 0}.wd-raters b{font-size:14px;color:var(--wd-accent)}.wd-raters small{font-size:9px;font-weight:400;color:var(--wd-muted);margin-left:2px}.wd-review-editor{background:#f7f1f4;border:1px solid #ecdee5;border-radius:4px;margin-bottom:20px;padding:15px 18px}.wd-review-editor summary{cursor:pointer;font-size:12px;color:var(--wd-accent);font-weight:550}.wd-review-editor summary span{float:right}.wd-review-editor .review-form{margin-top:18px;background:none;border:0;padding:0}.wd-review-editor input,.wd-review-editor textarea{font-size:13px}.wd-review-editor .form-actions .btn{font-size:11px}.wd-reading-column .review{padding:22px 0;border-bottom:1px solid var(--wd-line);margin:0;background:none;border-radius:0}.wd-reading-column .review-head{gap:10px;flex-wrap:wrap}.wd-reading-column .review-head .muted{font-size:10px;margin-left:auto}.wd-reading-column .review-head .mini-score{font-size:11px}.wd-reading-column .review-title{width:100%;font-size:17px;margin-top:13px}.wd-reading-column .review-body{font-size:14px;line-height:2;overflow-wrap:anywhere;margin-top:12px}.wd-review-invite{font-size:12px;color:var(--wd-muted)}.wd-review-invite a{color:var(--wd-accent)}.wd-empty{display:flex;align-items:center;gap:20px;margin:25px 0 0}.wd-empty>span{font-size:80px;font-family:Georgia;color:#e8cbd8;line-height:.8}.wd-empty p{font-size:12px;line-height:1.9;color:var(--wd-muted)}.wd-sync-note{font-size:9px;line-height:1.8;color:#9e8d9b}.wd-sync-note .btn{font-size:9px;padding:5px 8px;min-height:0}
/* A separate account doorway: image and form each have room to breathe. */
.member-auth-page{background:#f5f1f3}.member-auth-page .main{padding-top:24px;padding-bottom:34px}.member-auth-page .mascot-widget{display:none}.au-shell{display:grid;grid-template-columns:1fr 1fr;min-height:665px;background:#fffdfc;border:1px solid #eae2e7;overflow:hidden;box-shadow:0 12px 55px #6045590b;border-radius:8px}.au-art{position:relative;min-width:0;overflow:hidden;background:#dee5f0}.au-art>img{display:block;width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 25%;animation:au-image-in 1.1s cubic-bezier(.2,.7,.3,1) both}.au-register .au-art>img{object-position:50% 30%}.au-art:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#192135d9);pointer-events:none}.au-art-index{position:absolute;top:27px;left:30px;font-size:9px;letter-spacing:2px;color:#354263;background:#ffffffc9;padding:8px 12px;border:1px solid #fff6;z-index:1}.au-art-caption{position:absolute;bottom:35px;left:36px;right:25px;color:white;z-index:1;animation:wd-enter .8s .2s both}.au-art-caption p{font-size:9px;letter-spacing:2px;opacity:.8}.au-art-caption h2{font-size:36px;line-height:1.4;letter-spacing:-1px;margin:16px 0 20px;color:#fff}.au-art-caption>span{font-size:10px;opacity:.8}.au-form-side{position:relative;padding:30px 50px 34px;display:flex;align-items:center;justify-content:center}.au-home{position:absolute;top:25px;left:35px;color:#988696;font-size:11px}.au-form-wrap{width:100%;max-width:380px;margin:40px 0 0;animation:wd-enter .75s .12s both}.au-avatar{object-fit:contain;background:#fff0f5;border-radius:50%;border:1px solid #f1dfe8;padding:4px}.au-eyebrow{font-size:8px;letter-spacing:1.8px;color:#a77690;margin:17px 0 7px}.au-form-wrap h1{font-size:29px;letter-spacing:-1px;margin:0 0 10px;color:#4b354c}.au-description{font-size:12px;line-height:1.8;color:#95828f;margin:0 0 26px}.au-form .field{gap:7px}.au-form label{font-size:12px;font-weight:500;color:#635163}.au-form label>span{font-size:10px;float:right;font-weight:400;color:#ab94a2}.au-form .input{font-size:12px;padding:12px 13px;min-height:43px;border-radius:5px;background:#fffcfe;border-color:#e8dfe7}.au-form .input:focus{border-color:#b14b73;box-shadow:0 0 0 3px #c5719312}.au-password{position:relative}.au-password .input{width:100%;padding-right:55px}.au-password>button{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:10px;color:#a48194;background:none;border:0;padding:7px;cursor:pointer}.au-form .au-invite{letter-spacing:2px;text-transform:uppercase}.au-submit{font-size:12px;min-height:44px;margin-top:3px;border-radius:5px;background:#a3466c;transition:background .25s,transform .25s}.au-submit:hover{background:#873854;transform:translateY(-1px)}.au-form-feedback{font-size:11px;color:#b64768;min-height:0;margin:0;line-height:1.6}.au-form-feedback:empty{display:none}.au-form-wrap .auth-switch{font-size:11px;color:#9b8393;text-align:center;margin:21px 0 0}.au-form-wrap .auth-switch a{color:#aa446d;margin-left:8px}.au-footnote{font-size:9px;color:#b7a0af;letter-spacing:1.3px;text-align:center;margin:28px 0 0}.au-register .au-form-wrap{margin-top:32px}.au-register .au-avatar{width:46px;height:46px}.au-register .au-eyebrow{margin-top:12px}.au-register .au-description{margin-bottom:19px}.au-register .stack-form{gap:13px}.au-register .au-footnote{margin-top:20px}.au-form-wrap .flash{font-size:12px;line-height:1.7}
/* P5R-inspired original cut-paper language. Typography and data stay upright. */
.annual-page{background:#151319;color:#f8f6f2;--text:#f8f6f2;--text-dim:#b8adb9;--surface:#25212b;--border:#514752;--brand:#e6314a}.annual-page .main{padding-top:28px}.annual-page .footer{background:#17141c;border-color:#3c313e;color:#b8adb9}.annual-page .topbar{background:#17131cec;color:#f8f6f2;border-color:#49363e}.annual-page .brand-name,.annual-page .nav-link{color:#ded4dd}.annual-page .nav-link.is-active{color:#ff677f}.annual-page .mascot-widget{display:none}.jx-heading{display:grid;grid-template-columns:1fr 290px;position:relative;background:#e82d48;overflow:hidden;padding:34px 45px 31px;clip-path:polygon(0 0,98% 0,100% 84%,98% 100%,0 100%)}.jx-heading-copy{position:relative;z-index:1}.jx-heading-copy>p{font-size:10px;letter-spacing:2px;color:#ffdce5;margin:0 0 12px}.jx-heading h1{font-size:74px;letter-spacing:-4px;line-height:1.05;margin:0 0 23px;color:white;display:flex;align-items:center;gap:10px}.jx-heading h1>span{background:#f7f2ee;color:#19131c;padding:7px 18px 10px;transform:rotate(-3deg);box-shadow:7px 7px 0 #18121c}.jx-heading h1 sup{font-size:18px;letter-spacing:2px;font-weight:500;align-self:flex-start;margin:3px 0 0 17px}.jx-heading-bottom{display:flex;gap:30px;align-items:center;font-size:11px}.jx-heading-bottom button{border:1px solid #fff8;color:white;background:transparent;padding:6px 12px;font:inherit;font-size:10px;cursor:pointer}.jx-heading-aside{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:20px;padding-bottom:25px;z-index:1}.jx-heading-aside>b{font-size:100px;line-height:1;font-style:italic;letter-spacing:-7px;color:#fff9}.jx-heading-aside p{font-size:15px;font-weight:600;line-height:1.6;white-space:nowrap;color:#fff}.jx-heading-aside a{position:absolute;right:0;bottom:0;font-size:10px;color:white}.jx-heading-star{position:absolute;font-size:250px;line-height:1;top:-90px;right:180px;color:#a2133022;transform:rotate(15deg)}.jx-archive-note{display:flex;align-items:center;gap:15px;font-size:10px;color:#aa9ba9;margin:20px 0 25px;line-height:1.8}.jx-archive-note>span{color:#ee607b;font-size:8px;letter-spacing:1px;border-left:2px solid #e82d48;padding-left:10px}.jx-archive-note>a{margin-left:auto;color:#d6c5d3}.jx-work{position:relative;min-width:0;display:grid;grid-template-columns:116px minmax(0,1fr);background:#f7f3f0;color:#28202e;border:1px solid #fff6;isolation:isolate;transition:transform .35s,box-shadow .35s}.jx-work:hover{transform:translateY(-4px);box-shadow:7px 7px 0 #e62d48}.jx-image{position:relative;display:flex;align-items:center;justify-content:center;padding:14px;background:#e5dfe6;overflow:hidden;min-width:0}.jx-image:after{content:'';position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,#21131d8c);pointer-events:none}.jx-image img{width:100%;height:100%;max-height:195px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 6px 8px #2d18393a);transition:transform .5s}.jx-work:hover .jx-image img{transform:scale(1.03)}.jx-rank-number{position:absolute;bottom:4px;left:7px;z-index:2;background:#e62d48;color:white;clip-path:polygon(0 5%,95% 0,100% 92%,5% 100%);font-size:30px;font-weight:850;font-style:italic;line-height:1.1;letter-spacing:-1px;padding:4px 10px 8px;text-shadow:2px 2px #491728}.jx-work-body{padding:20px 18px 16px;min-width:0;display:flex;flex-direction:column}.jx-category{font-size:7px;letter-spacing:1px;color:#a36b7e;margin:0 0 9px;font-weight:600}.jx-work h2,.jx-work h3{margin:0;letter-spacing:-.6px;line-height:1.5;color:#241b28;font-size:18px}.jx-work h2 small,.jx-work h3 small{display:block;font-size:13px;font-weight:500;letter-spacing:0}.jx-rounds{display:flex;gap:17px;margin:15px 0 16px}.jx-rounds>div{display:flex;flex-direction:column;gap:4px}.jx-rounds dt{font-size:8px;color:#917687}.jx-rounds dd{font-size:14px;font-weight:700;margin:0;color:#493043}.jx-rounds>div:last-child dd{color:#cc294b}.jx-work-links{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:auto;padding-top:9px;border-top:1px solid #d9cfd7}.jx-view{font-size:11px;font-weight:650;display:flex;align-items:center;gap:15px}.jx-view span{font-size:17px;color:#e62d48}.jx-source{font-size:8px;color:#9b8293;white-space:nowrap}.jx-work-note{font-size:9px;color:#9a7e8f;line-height:1.65;margin:0 0 10px}.jx-rank-1{grid-template-columns:280px minmax(0,1fr);background:#f9f6f1;min-height:345px;overflow:hidden;clip-path:polygon(0 0,99% 0,100% 90%,97% 100%,0 100%)}.jx-rank-1 .jx-image{background:repeating-linear-gradient(-45deg,#211923,#211923 7px,#2b202d 7px,#2b202d 8px);padding:24px 40px}.jx-rank-1 .jx-image img{max-height:305px;filter:drop-shadow(10px 10px 0 #e42d48)}.jx-rank-1 .jx-rank-number{font-size:55px;left:12px;bottom:12px}.jx-rank-1 .jx-work-body{padding:32px 42px 26px}.jx-rank-1 .jx-category{font-size:10px;letter-spacing:1.8px;color:#cb3155}.jx-rank-1 h2{font-size:38px;letter-spacing:-1px;margin:16px 0 3px}.jx-rank-1 h2 small{font-size:20px;margin-top:7px}.jx-rank-1 .jx-rounds{gap:45px;margin:23px 0 20px}.jx-rank-1 .jx-rounds dt{font-size:10px}.jx-rank-1 .jx-rounds dd{font-size:23px}.jx-rank-1 .jx-work-links{max-width:450px;position:relative;z-index:1}.jx-champion-star{position:absolute;font-size:200px;line-height:1;color:#e9dfe8;right:15px;top:55px;transform:rotate(-20deg);z-index:-1}.jx-runners{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.jx-runners .jx-work{grid-template-columns:165px minmax(0,1fr);min-height:250px}.jx-runners .jx-image img{max-height:220px}.jx-runners .jx-work-body{padding:24px}.jx-runners .jx-category{font-size:8px}.jx-runners h2{font-size:25px;margin:5px 0 4px}.jx-runners .jx-rounds{gap:27px}.jx-rest{margin:65px 0}.jx-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.jx-section-title p{font-size:8px;letter-spacing:2px;color:#cb8da1;margin:0 0 10px}.jx-section-title h2{font-size:28px;letter-spacing:-.7px;margin:0;color:#f8f0f5}.jx-section-title>span{font-size:28px;font-weight:800;letter-spacing:1px;color:#eb3b57;font-style:italic}.jx-section-title small{font-size:11px;color:#a394a5;display:block;margin-top:10px}.jx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 19px}.jx-grid .jx-work{min-height:235px}.jx-originals{padding:32px;border:1px solid #4b3544;background:repeating-linear-gradient(-45deg,#201923,#201923 8px,#241c28 8px,#241c28 9px)}.jx-poster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.jx-poster-grid button{border:0;padding:15px;background:#302536;color:#d9c5d3;cursor:zoom-in;text-align:left;transition:background .3s}.jx-poster-grid button:hover{background:#463244}.jx-poster-grid img{display:block;width:100%;height:240px;object-fit:contain}.jx-poster-grid span{display:block;font-size:11px;padding:15px 5px 0}.jx-closing{display:flex;align-items:center;justify-content:space-between;padding:50px 12px;margin:30px 0 0;border-top:1px solid #4b3544}.jx-closing p{font-size:14px;line-height:1.8;color:#ba9fb1}.jx-closing strong{font-size:25px;color:white}.jx-closing a{background:#e82d48;color:white;font-size:12px;padding:13px 23px;clip-path:polygon(3% 0,100% 0,97% 100%,0 100%)}.jx-opening{position:fixed;inset:0;margin:0;width:100vw;height:100vh;max-width:none;max-height:none;border:0;background:#171219;color:white;padding:0;overflow:hidden;z-index:300}.jx-opening::backdrop{background:#171219}.jx-opening>button{position:absolute;top:30px;right:35px;z-index:5;background:#171219aa;border:1px solid #ffffff70;color:white;padding:10px 17px;font-size:11px;cursor:pointer}.jx-opening-stripe{position:absolute;inset:-20% -20%;background:#e62d48;transform:rotate(-14deg);animation:jx-slash-in .6s cubic-bezier(.2,.8,.3,1) both}.jx-opening-star{position:absolute;left:calc(50% - 285px);top:calc(50% - 170px);font-size:340px;line-height:1;color:#171219;transform:rotate(-18deg);animation:jx-star-in .75s .12s cubic-bezier(.2,.8,.3,1) both}.jx-opening-text{position:absolute;left:calc(50% - 240px);top:calc(50% - 80px);transform:rotate(-4deg);animation:jx-title-in .7s .25s cubic-bezier(.16,1,.3,1) both}.jx-opening-text p{font-size:10px;letter-spacing:3px;margin:0 0 14px;background:#171219;padding:7px 12px;display:table}.jx-opening-text h2{font-size:93px;letter-spacing:-5px;color:#fff;margin:0 0 17px;text-shadow:7px 7px #16101a;line-height:1.2}.jx-opening-text h2 span{color:#171219;background:#fff;padding:0 15px 10px;margin-left:10px;text-shadow:none;display:inline-block}.jx-opening-text strong{font-size:15px;background:#fff;color:#281221;display:table;padding:9px 15px;font-weight:500}.jx-opening.is-leaving{animation:jx-exit .32s both}.jx-modal-open{overflow:hidden}.jx-selection,.jx-heading{animation:wd-enter .75s .15s both}.wd-overview{animation:wd-enter .65s both}
@keyframes wd-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes au-image-in{from{opacity:.5;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes jx-slash-in{from{transform:translateX(-115%) rotate(-14deg)}to{transform:translateX(0) rotate(-14deg)}}@keyframes jx-star-in{from{opacity:0;transform:scale(.2) rotate(40deg)}to{opacity:1;transform:scale(1) rotate(-18deg)}}@keyframes jx-title-in{from{opacity:0;transform:translateX(100px) rotate(-4deg)}to{opacity:1;transform:translateX(0) rotate(-4deg)}}@keyframes jx-exit{to{opacity:0;transform:translateX(12%)}}
@media(max-width:1100px){.wd-overview{grid-template-columns:180px minmax(0,1fr) 280px;gap:23px}.wd-cover{height:265px}.wd-identity h1{font-size:25px}.wd-record{padding:17px}.wd-content-layout{grid-template-columns:minmax(0,1fr) 280px;gap:32px}.jx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.au-form-side{padding:30px}.jx-rank-1 h2{font-size:32px}}
@media(max-width:760px){.wd-overview{grid-template-columns:150px minmax(0,1fr);gap:20px}.wd-record{grid-column:1/-1}.wd-content-layout{grid-template-columns:1fr}.wd-section-nav{gap:18px;top:55px}.au-shell{grid-template-columns:1fr}.au-art{min-height:280px}.au-art-caption h2{font-size:26px}.au-form-side{padding:40px 25px}.jx-heading{grid-template-columns:1fr;padding:25px}.jx-heading h1{font-size:55px}.jx-heading-aside{display:none}.jx-archive-note{flex-wrap:wrap}.jx-rank-1{grid-template-columns:150px 1fr}.jx-rank-1 .jx-image{padding:20px}.jx-rank-1 .jx-work-body{padding:22px}.jx-rank-1 h2{font-size:25px}.jx-runners,.jx-grid{grid-template-columns:1fr}.jx-opening-text{left:10%;top:40%;right:5%}.jx-opening-text h2{font-size:60px}.jx-closing{display:block}.jx-closing a{display:inline-block;margin-top:12px}.dt-gallery-6,.dt-gallery-7,.dt-gallery-8{grid-column:span 1}.dt-gallery-6 img,.dt-gallery-7 img,.dt-gallery-8 img{height:320px}}
@media(prefers-reduced-motion:reduce){.wd-overview,.au-art img,.au-form-wrap,.au-art-caption,.jx-heading,.jx-selection,.jx-opening *,.jx-opening.is-leaving{animation:none!important;opacity:1!important}.jx-work,.wd-cover img,.jx-image img,.wd-screenshots img,.au-submit{transition:none!important;transform:none!important}.jx-opening.is-leaving{opacity:0!important}}

/* Readability refinements after desktop review. */
.wd-cover-masked{display:block;text-decoration:none}.wd-cover-masked .wd-cover-zoom{opacity:1;transform:none;background:rgba(66,39,60,.86);color:#fff}.wd-cover-column .wd-cover-note{font-size:12px;line-height:1.7;color:var(--wd-muted);margin:12px 0}.wd-cover-admin{font-size:12px;margin-top:18px;text-align:left;border-top:1px solid var(--wd-line);padding-top:12px}.wd-cover-admin summary{cursor:pointer;color:var(--wd-accent)}.wd-cover-admin form{display:grid;gap:10px;margin-top:12px}.wd-cover-admin label{display:grid;gap:7px}.wd-cover-admin .input{font-size:12px;width:100%}.cover-box:has(img[src*="/cover-masks/"])::after{content:"封面已遮挡";position:absolute;top:65%;left:0;right:0;text-align:center;font-size:12px;color:#fff;pointer-events:none}
.wd-breadcrumb,.wd-section-nav{font-size:13px}.wd-source-links{font-size:12px}.wd-badges>span,.wd-facts dt,.wd-counts,.wd-record h3 small,.wd-note-label{font-size:11px}.wd-record h3{font-size:13px}.wd-record .input{font-size:12px}.wd-record .rate-hint,.wd-record .form-actions .btn,.wd-record .btn-status{font-size:11px}.wd-record .star{font-size:12px}.wd-introduction,.wd-intro-preview{font-size:16px;line-height:1.95}.wd-section-title p{font-size:12px}.wd-side-section .meta-row,.wd-related a,.wd-cast-grid .cast-name{font-size:12px}.wd-cast-grid .cast-cv{font-size:10px}.wd-side-section .meta-key{font-size:10px}.wd-reading-column .review-body{font-size:15px}.wd-cast-more{grid-column:1/-1}.wd-cast-more>summary{font-size:11px;cursor:pointer;color:var(--wd-accent);padding:10px 0}.wd-cast-more .wd-cast-grid{margin-top:10px}.au-form label{font-size:13px}.au-description,.au-form .input,.au-submit{font-size:14px}.au-form-wrap .auth-switch{font-size:12px}.au-password>button{font-size:11px}.au-register .au-form-side{padding-top:18px;padding-bottom:18px}.au-register .au-form-wrap{margin-top:25px}.au-register .au-form-wrap h1{font-size:27px}.au-register .au-description{margin-bottom:15px}.au-register .au-avatar{width:40px;height:40px}.au-register .au-eyebrow{margin:9px 0 5px}.au-register .au-form{gap:11px}.au-register .input{padding-top:10px;padding-bottom:10px;min-height:40px}.au-register .auth-switch{margin-top:16px}.au-register .au-footnote{margin-top:15px}.jx-archive-note{font-size:11px}.jx-category{font-size:9px}.jx-rounds dt{font-size:10px}.jx-rounds dd{font-size:16px}.jx-work-note{font-size:10px}.jx-source{font-size:10px}.jx-view{font-size:12px}

/* Member records, community feed and the festival participation guide. */
.nav-user .nav-link{position:relative}.nav-uid{position:absolute;left:31px;bottom:-5px;font:8px/1.2 var(--font-sans, sans-serif);letter-spacing:.04em;white-space:nowrap;color:var(--muted,#8c8190)}
.mr-eyebrow{font-size:10px!important;letter-spacing:.18em;font-weight:600;color:#a25d79;margin:0 0 12px!important}
.mr-profile-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:32px;min-height:200px;padding:32px 40px;background:#f5edf1;border-top:3px solid #ac6783;margin-top:16px}
.mr-member{display:flex;align-items:center;gap:25px;position:relative;z-index:1;max-width:75%}.mr-member>img{width:88px;height:88px;object-fit:contain;border-radius:50%;background:#fff;border:5px solid #fff}
.mr-member h1{font-size:30px;line-height:1.3;margin:0 0 9px}.mr-role{display:inline-block;vertical-align:middle;font-size:11px;font-weight:500;background:#aa5575;color:#fff;padding:4px 9px;margin-left:14px;border-radius:4px}
.mr-member-meta{font-size:11px!important;color:#887783;margin:0 0 12px!important;letter-spacing:.04em}.mr-member-meta span{margin:0 9px}.mr-bio{font-size:14px!important;line-height:1.7;margin:0!important;max-width:620px;overflow-wrap:anywhere}
.mr-hero-word{position:absolute;right:25px;bottom:-10px;color:#e8dbe3;opacity:.65;font-size:70px;font-weight:900;letter-spacing:-.05em;pointer-events:none;white-space:nowrap}
.mr-profile-actions{display:flex;flex-direction:column;gap:12px;position:relative;z-index:2;font-size:12px;align-items:flex-end}.mr-profile-actions a{color:#775263}.mr-edit-bio{font:inherit;font-weight:600;color:#775263;border:1px solid #d9becd;background:#fff8;padding:8px 12px;cursor:pointer;border-radius:4px}.mr-edit-bio:hover{background:#fff}
.mr-bio-dialog{width:min(500px,calc(100vw - 40px));max-height:calc(100vh - 50px);overflow:auto;border:1px solid #e3ccd8;border-radius:10px;padding:30px;background:#fffafb;color:#453842;box-shadow:0 25px 90px #39223140}.mr-bio-dialog::backdrop{background:#3c283c66;backdrop-filter:blur(5px)}.mr-bio-dialog header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.mr-bio-dialog h2{margin:0;font-size:25px}.mr-bio-dialog header button{border:0;border-radius:50%;width:34px;height:34px;font-size:22px;color:#965a78;background:#efe1e9;cursor:pointer}.mr-bio-dialog label{display:block;font-size:13px;font-weight:600}.mr-bio-dialog #bio-help{font-size:12px;line-height:1.7;color:#897582;margin:8px 0 14px}.mr-bio-dialog textarea{width:100%;min-height:125px;font-size:14px;line-height:1.8;resize:vertical}.mr-bio-dialog footer{display:flex;justify-content:flex-end;gap:12px;margin-top:23px;padding-top:20px;border-top:1px solid #eadce4}.mr-bio-dialog .btn{font-size:13px;border-radius:4px}
.mr-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:25px 0 46px;border-bottom:1px solid #e4dce1}.mr-stats a{position:relative;display:flex;align-items:center;gap:15px;padding:15px 22px;color:#453842;border-bottom:2px solid transparent}.mr-stats a+a{border-left:1px solid #e4dce1}.mr-stats a.is-on{border-bottom-color:#b7507c}.mr-stats strong{font-size:30px;font-weight:600}.mr-stats span{font-size:12px;color:#887783}.mr-stats i{margin-left:auto;font-style:normal;color:#c28ba4}
.mr-records{scroll-margin-top:90px}.mr-records-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.mr-records-heading h2{font-size:24px;margin:0}.mr-records-heading h2 small{font-size:12px;font-weight:400;margin-left:18px;color:#887783}.mr-records-heading form{display:flex;align-items:center;gap:10px;font-size:12px}.mr-records-heading select{font-size:12px;background:#fff;border:1px solid #e2d7dd;padding:9px 12px;border-radius:4px}.mr-records-heading button{font-size:11px;border:0;background:transparent;color:#96506f;cursor:pointer}
.mr-filters{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:17px;border-bottom:1px solid #e4dce1}.mr-filters a{padding:8px 15px;font-size:12px;color:#796a76;border:1px solid transparent}.mr-filters a[aria-current]{background:#eee3e9;color:#8a3e60;border-color:#e3ccd7;font-weight:600}.mr-filters a:hover{background:#f4edf1}.mr-result-note{display:flex;justify-content:space-between;font-size:11px!important;color:#998994;margin:18px 0!important}.mr-result-note span{color:#a99da5}
.mr-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mr-work{display:grid;grid-template-columns:80px minmax(0,1fr);gap:18px;padding:18px;background:#fff;border:1px solid #e8e0e5;min-height:180px;transition:box-shadow .2s,border-color .2s,transform .2s}.mr-work:hover{border-color:#caa2b7;box-shadow:0 6px 20px #5231440a;transform:translateY(-2px)}
.mr-cover{width:80px;height:120px;display:flex;align-items:center;justify-content:center;background:#f4f0f3}.mr-cover img{width:100%;height:100%;object-fit:contain}.mr-cover span{font-size:10px;color:#aa98a3}.mr-work-body{min-width:0;display:flex;flex-direction:column}.mr-work-tags{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:11px}.mr-work-tags strong{font-size:18px;color:#aa527b;white-space:nowrap}.mr-work-tags small{font-size:9px;color:#a696a1;font-weight:400}.mr-unrated{font-size:10px;color:#ab9ca5}.mr-status{display:inline-block;padding:4px 8px;font-size:10px;line-height:1.4;background:#f1ebf0;color:#8b7081;white-space:nowrap}.mr-status.doing{background:#e9f0f7;color:#54779c}.mr-status.done{background:#eaf3ed;color:#577d64}.mr-status.wish{background:#f5e9f0;color:#aa6086}.mr-status.dropped{background:#f0eeec;color:#8a8078}.mr-work h3{font-size:15px;line-height:1.5;margin:0 0 10px}.mr-work h3 a{color:#433541}.mr-progress{font-size:11px!important;color:#7f7380;margin:0 0 8px!important;line-height:1.5}.mr-excerpt{font-size:12px!important;color:#857782;line-height:1.7;margin:0 0 14px!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.mr-work-bottom{display:flex;justify-content:space-between;gap:8px;font-size:10px;margin-top:auto;padding-top:10px}.mr-work-bottom time{color:#a69aa3}.mr-work-bottom a{color:#ab6484}
.mr-pagination{display:flex;justify-content:center;align-items:center;gap:30px;margin:35px 0 15px;font-size:12px}.mr-pagination>div{display:flex;gap:8px}.mr-pagination a,.mr-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px}.mr-pagination a{border:1px solid #e1d7de;color:#7c596e}.mr-pagination span{color:#b4a7b0}.mr-pagination [aria-current]{background:#a35778;color:#fff}.mr-empty{text-align:center;padding:55px 20px;background:#f8f4f7;border:1px solid #ece3e8}.mr-empty>img{width:80px;height:80px;object-fit:contain}.mr-empty h3{font-size:20px;margin:15px 0 10px}.mr-empty p{font-size:13px!important;color:#91818d;margin-bottom:22px}.mr-empty .btn{font-size:12px}
.wd-record{align-self:start!important}.mr-record-form>label,.mr-review-fields label{display:block;margin:17px 0 8px;font-size:12px;font-weight:500}.mr-record-form label small{font-weight:400;font-size:10px;color:#ab98a5;margin-left:6px}.mr-record-form .input{font-size:12px;width:100%;border-radius:4px;padding:10px 12px}.mr-score-label{display:flex;align-items:center;justify-content:space-between;margin:20px 0 9px}.mr-score-label label{font-size:12px;font-weight:500}.mr-score-label button{border:0;background:none;font-size:10px;color:#a98999;cursor:pointer;padding:0}.mr-record-form .rate-stars{gap:3px}.mr-record-form .star{width:23px;height:28px;padding:0;font-size:11px}.mr-record-form .rate-hint{font-size:10px;display:block;font-weight:400;color:#a28494;margin:9px 0 0}.mr-review-fields{border-top:1px solid #e7dde3;margin-top:18px;padding-top:15px}.mr-review-fields summary{font-size:12px;display:flex;justify-content:space-between;cursor:pointer}.mr-review-fields textarea{line-height:1.7;resize:vertical}.mr-form-help{font-size:10px!important;line-height:1.7;color:#aa98a3;margin:17px 0!important}.mr-record-form .btn{font-size:12px;border-radius:4px}.mr-save-time{font-size:10px!important;color:#af9ca8;margin:13px 0 0!important}.wd-no-images{padding:25px;background:#f7f3f6;color:#8f7b88;font-size:13px!important;line-height:1.8}
.cw-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:28px 0 36px;border-bottom:1px solid #e1d5dd;margin-bottom:28px}.cw-heading h1{font-size:38px;line-height:1.4;margin:0 0 17px;letter-spacing:-.025em}.cw-heading h1 span{color:#a16582}.cw-heading p:not(.mr-eyebrow){font-size:14px!important;color:#8c7b88;line-height:1.8;margin:0}.cw-my-record{display:flex;align-items:center;gap:17px;padding:18px 25px;background:#efe5eb;min-width:265px}.cw-my-record>img{width:62px;height:62px;object-fit:contain}.cw-my-record span{font-size:11px;color:#9b7b8e}.cw-my-record strong{display:block;font-size:15px;color:#785065;margin-top:8px}.cw-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:55px}.cw-layout>section{scroll-margin-top:90px}.cw-entry{padding:25px 0;border-bottom:1px solid #e7dce3}.cw-entry:first-child{padding-top:10px}.cw-entry>header{display:flex;align-items:center;gap:17px;margin-bottom:20px}.cw-user{display:flex;align-items:center;gap:10px;color:#54424f}.cw-user>img{object-fit:contain;background:#f4eaf0;border-radius:50%;width:38px;height:38px}.cw-user strong{font-size:13px}.cw-user small{display:block;font-size:9px;color:#ac96a5;margin-top:4px}.cw-event{font-size:11px;color:#ab6c8b}.cw-entry time{font-size:10px;color:#a997a3;margin-left:auto}.cw-entry-body{display:grid;grid-template-columns:95px minmax(0,1fr);gap:23px;padding-left:48px}.cw-cover{width:95px;height:142px;background:#f1eaf0;display:flex;align-items:center;justify-content:center}.cw-cover img{width:100%;height:100%;object-fit:contain}.cw-cover span{font-size:10px;color:#a28f9c}.cw-work-title{display:flex;justify-content:space-between;gap:15px}.cw-work-title h2{font-size:18px;line-height:1.5;margin:0 0 12px}.cw-work-title h2 a{color:#423541}.cw-work-title>b{font-size:22px;color:#aa547e;white-space:nowrap}.cw-work-title>b small{font-size:10px;font-weight:400;color:#ac92a1}.cw-entry-tags{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:13px}.cw-entry-tags p{font-size:11px!important;color:#8f7a88;margin:0!important;line-height:1.7}.cw-review,.cw-review-preview{font-size:14px!important;line-height:1.85;margin:8px 0 16px!important;white-space:pre-wrap;overflow-wrap:anywhere;color:#645362}.cw-review-more summary{font-size:11px;cursor:pointer;color:#a76888}.cw-entry-body:has(.cw-review-more[open]) .cw-review-preview{display:none}.cw-open-work{font-size:11px;color:#a4708c}.cw-quiet{font-size:12px!important;color:#b2a0ad;margin:10px 0 18px!important}.cw-sidebar>section{padding:22px;background:#f4edf2}.cw-sidebar h2{font-size:17px;margin:0 0 18px}.cw-member{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px solid #e8dce4;color:#634e5e}.cw-member img{width:34px;height:34px;object-fit:contain}.cw-member strong{font-size:12px}.cw-member small{display:block;font-size:10px;color:#a28799;margin-top:5px}.cw-member i{font-style:normal;color:#bd95aa;margin-left:auto;font-size:12px}.cw-sidebar-art{margin-top:24px}.cw-sidebar-art img{width:100%;aspect-ratio:1.7;object-fit:cover}.cw-sidebar-art p{font-size:18px!important;line-height:1.6;color:#997189;margin:20px 0 12px!important}.cw-sidebar-art a{font-size:11px;color:#a4738e}
.fd-feature-link{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 38px;background:#f4e6ec;border-left:3px solid #df668c;margin:30px 0 0;color:#764258}.fd-feature-link span{font-size:9px;letter-spacing:.15em}.fd-feature-link strong{display:block;font-size:24px;margin:9px 0}.fd-feature-link p{font-size:13px!important;color:#a16c80;margin:0!important}.fd-feature-link>b{font-size:13px;white-space:nowrap}
.festival-details-page{background:#faf7f5}.fd-heading{display:flex;justify-content:space-between;gap:50px;padding:28px 30px 35px;border-bottom:1px solid #e5d6d9}.fd-back{font-size:12px;color:#a96b82;display:inline-block;margin-bottom:28px}.fd-heading h1{font-size:42px;line-height:1.35;letter-spacing:-.03em;margin:0 0 20px;color:#573948}.fd-heading>div>p:not(.mr-eyebrow){font-size:14px!important;color:#a17b8a}.fd-heading>img{width:160px;object-fit:contain;align-self:center;box-shadow:8px 8px 0 #eed5df}.fd-heading-tags{display:flex;gap:9px;margin-top:24px}.fd-heading-tags span{font-size:11px;padding:6px 10px;background:#f2e5e9;color:#a96c83}.fd-layout{display:grid;grid-template-columns:minmax(0,790px) 230px;justify-content:space-between;gap:80px;padding:30px}.fd-article{min-width:0}.fd-section{scroll-margin-top:100px;padding:25px 0 35px;border-bottom:1px solid #e7dade}.fd-section h2{font-size:26px;line-height:1.5;margin:0 0 22px;color:#5a3c4d}.fd-section>p,.fd-section li,.fd-callout p{font-size:16px!important;line-height:1.9;color:#775d6d;overflow-wrap:anywhere}.fd-section a{color:#b55b80}.fd-callout{background:#f1e6e8;padding:23px 28px;border-left:2px solid #c6859c;margin:25px 0}.fd-callout strong{font-size:15px;color:#83516a}.fd-callout p{font-size:14px!important;margin:8px 0 0!important}.fd-credit,.fd-muted{font-size:12px!important;color:#a08a95;line-height:1.8}.fd-section .fd-credit,.fd-section .fd-muted{font-size:12px!important}.fd-dates{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fd-dates>div{padding:24px;background:#f6edf0}.fd-dates span{font-size:12px;color:#a96c84}.fd-dates strong{display:block;font-size:26px;font-weight:500;color:#8e4667;margin:12px 0}.fd-dates p{font-size:12px!important;line-height:1.8;color:#a08090;margin:0!important}.fd-steps{padding:0;list-style:none;counter-reset:festival-step;margin:28px 0}.fd-steps li{position:relative;counter-increment:festival-step;padding:15px 0 15px 46px;border-bottom:1px solid #eee2e7}.fd-steps li:before{content:'0' counter(festival-step);position:absolute;left:0;top:15px;font-size:13px;color:#c48da5}.fd-steps strong{font-size:15px;display:block}.fd-steps span{display:block;font-size:13px;color:#a18393;margin-top:4px}.fd-types{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}.fd-types details{background:#fff;border:1px solid #e5d7df;padding:15px 17px;align-self:start}.fd-types summary{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:500;color:#82576e;cursor:pointer}.fd-types summary span{color:#bb8ba2;font-size:14px}.fd-types details p{font-size:13px!important;line-height:1.8;margin:14px 0!important;color:#937686}.fd-types a{font-size:11px}.fd-spec-table{width:100%;border-collapse:collapse;background:#fff;margin:22px 0;font-size:14px;line-height:1.85}.fd-spec-table th{width:125px;text-align:left;vertical-align:top;font-weight:500;color:#945d79;background:#f3eaee}.fd-spec-table th,.fd-spec-table td{padding:17px 20px;border-bottom:1px solid #e8dce3}.fd-spec-table td{color:#7e6172}.fd-subject{padding:22px 25px;background:#f1e6eb;margin:25px 0}.fd-subject>span{display:block;font-size:11px;color:#ab718d;margin-bottom:12px}.fd-subject code{display:block;font-family:inherit;font-size:14px;line-height:1.9;color:#80506b;overflow-wrap:anywhere}.fd-subject button,.fd-contacts button{border:0;background:transparent;font-size:11px;color:#b3678b;padding:0;margin-top:17px;cursor:pointer}.fd-checklist{padding-left:23px}.fd-checklist li{padding:4px 0;font-size:14px!important}.fd-contacts>div{padding:20px 0;border-bottom:1px solid #eadde4}.fd-contacts span{display:block;font-size:12px;color:#a2788e;margin-bottom:8px}.fd-contacts strong,.fd-contacts a{font-size:18px;font-weight:500;color:#8e5272}.fd-contacts p{font-size:13px!important;color:#a78998;margin:8px 0 0!important}.fd-contacts button{display:block}.fd-faq details{padding:18px 0;border-bottom:1px solid #e9dce3}.fd-faq summary{font-size:15px;color:#876079;cursor:pointer}.fd-faq p{font-size:14px!important;line-height:1.9;color:#987d8d;margin:14px 0 0!important}.fd-toc{position:sticky;top:110px;align-self:start;padding:25px 20px;background:#f3e9ed}.fd-toc nav{display:flex;flex-direction:column}.fd-toc nav a{font-size:12px;color:#99728a;padding:12px 0;border-bottom:1px solid #e7d6e0}.fd-toc nav a span{font-size:10px;color:#c192aa;margin-right:14px}.fd-toc nav a:hover{color:#a33d71}.fd-toc>div{padding:26px 0}.fd-toc>div>span{font-size:11px;color:#a07990;display:block}.fd-toc>div>strong{font-size:21px;color:#955877;display:block;margin:10px 0}.fd-toc>div>a,.fd-toc-back{font-size:11px;color:#b06d90}.fd-end{display:flex;align-items:center;justify-content:space-between;padding:50px 0}.fd-end strong{font-size:25px;line-height:1.6;color:#9e6d89}.fd-end .btn{font-size:12px}.mr-copy-feedback{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#80536c;color:#fff;padding:12px 25px;font-size:12px;z-index:100;box-shadow:0 8px 30px #52334533}.mr-copy-feedback:empty{display:none}
@keyframes mr-page-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@view-transition{navigation:auto}
::view-transition-old(root){animation-duration:.12s}
::view-transition-new(root){animation-duration:.22s}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
.member-profile-page .main{padding-top:24px}
.member-profile-page .mr-profile-hero{min-height:160px;padding:25px 35px;margin-top:0}
.member-profile-page .mr-stats{margin:20px 0 27px}
.member-profile-page .mr-records-heading{margin-bottom:17px}
.mr-member-meta,.mr-work-bottom,.mr-unrated,.mr-save-time,.mr-form-help,.mr-result-note,.cw-user small,.cw-entry time{color:#80707b}
.mr-work-bottom,.mr-progress,.mr-status,.cw-event,.cw-entry-tags p{font-size:12px!important}
.mr-work-bottom a,.cw-open-work{font-size:12px;color:#925673}
.mr-result-note{font-size:12px!important}.mr-excerpt{color:#6d5b67;font-size:13px!important}
.mr-record-form>label{margin-top:13px}.mr-record-form .mr-score-label{margin-top:15px}
.mr-record-form .mr-review-fields{margin-top:13px;padding-top:12px}
.mr-progress-fields{margin-top:20px}.mr-progress-fields label{display:block;font-size:12px;font-weight:500;margin-bottom:6px}.mr-progress-fields p,.mr-review-fields>p{font-size:11px!important;line-height:1.7;color:#8c7382;margin:0 0 10px!important}.mr-record-form .mr-review-fields{margin-top:22px;padding:17px;background:#f8edf3;border:1px solid #e5c5d5;border-top:3px solid #ae567e;border-radius:4px}.mr-review-fields header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mr-review-fields header>span{font-size:22px;color:#ac5279}.mr-review-fields h3{font-size:15px;margin:0;color:#713d59}.mr-review-fields header small{margin-left:auto;font-size:10px;color:#a28494}.mr-review-fields label{margin-top:13px}.mr-review-fields .input{background:#fff}.mr-review-fields textarea{min-height:110px;line-height:1.8}
.mr-review-jump{display:flex;align-items:center;gap:10px;padding:13px 12px;margin-top:18px;background:#f7e8f0;border:1px solid #dfbccf;border-radius:4px;color:#8d3c65;transition:background .2s,border-color .2s}.mr-review-jump:hover{background:#f0dbe6;border-color:#b8688c}.mr-review-jump>span:first-child{font-size:22px}.mr-review-jump>span:nth-child(2){font-size:13px;font-weight:600}.mr-review-jump small{display:block;font-size:10px;font-weight:400;color:#947383;margin-top:4px}.mr-review-jump b{margin-left:auto;font-size:19px}
/* A forum-style composer below the work overview keeps the first screen compact. */
.fr-composer{scroll-margin-top:130px;margin:20px 0 28px;border:1px solid #dfccd8;border-top:3px solid #b76689;border-radius:5px;background:#fffafb;overflow:hidden}.fr-heading{display:flex;align-items:center;gap:13px;padding:18px 23px;background:#f4ebf0;border-bottom:1px solid #e6d7e0}.fr-heading>img{object-fit:contain;border-radius:50%;background:#fff;padding:3px;flex:none}.fr-heading h3{font-size:18px;margin:0 0 4px;color:#543849}.fr-heading p{font-size:11px!important;color:#977f8e;margin:0!important}.fr-heading>span{margin-left:auto;font-size:10px;color:#9b7e91;white-space:nowrap}.fr-composer form{padding:20px 23px 15px}.fr-composer form>label:not(.sr-only){display:block;font-size:12px;margin:0 0 8px;color:#624d5b}.fr-composer label small{margin-left:6px;font-size:10px;color:#a894a0}.fr-title{width:100%;font-size:13px!important;border-radius:3px!important;padding:10px 12px!important}.fr-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f4eff3;border:1px solid #e3d8e0;margin-top:17px;padding:7px 10px}.fr-toolbar>div{display:flex;gap:5px}.fr-toolbar button{font:inherit;font-size:12px;cursor:pointer;color:#87717f;border:1px solid transparent;background:transparent;border-radius:3px;padding:7px 12px}.fr-toolbar button[aria-pressed="true"],.fr-toolbar button[aria-expanded="true"]{background:#fff;color:#963e68;border-color:#dcc5d3}.fr-toolbar button:hover{color:#963e68;background:#fff9}.fr-toolbar button>span{font-size:17px;margin-left:6px;vertical-align:middle}.fr-composer textarea,.fr-preview{width:100%;min-height:205px;border:1px solid #e3d8e0;border-top:0;padding:17px 18px;background:#fff;color:#463542;font:14px/1.9 var(--font-sans,sans-serif);resize:vertical;border-radius:0 0 3px 3px;overflow-wrap:anywhere}.fr-composer textarea:focus{outline:2px solid #c68ba8;outline-offset:-2px}.fr-preview{white-space:pre-wrap;line-height:2;display:flow-root}.fr-composer [hidden]{display:none!important}.fr-sticker-picker{padding:12px;background:#faf5f8;border:1px solid #e3d8e0;border-top:0}.fr-sticker-picker p{font-size:10px!important;color:#9b8391;margin:0 0 10px!important}.fr-sticker-picker>div{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}.fr-sticker-picker button{min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1px solid transparent;border-radius:4px;background:#fff;cursor:pointer;color:#796070}.fr-sticker-picker button:hover,.fr-sticker-picker button:focus-visible{border-color:#b76689;background:#f7e9f0}.fr-sticker-picker img{width:52px;height:52px;object-fit:contain}.fr-sticker-picker span{font-size:10px;white-space:nowrap}.fr-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.fr-footer p{font-size:10px!important;color:#a18a99;margin:0!important;line-height:1.8}.fr-footer>div{display:flex;align-items:center;gap:15px}.fr-footer [data-review-count]{font-size:11px;color:#a1889a;white-space:nowrap}.fr-footer [data-review-count].is-full{color:#b14069}.fr-footer .btn{font-size:12px;white-space:nowrap;border-radius:4px;padding:11px 20px}.fr-feedback{font-size:11px!important;color:#ad446d;margin:8px 0 0!important}.fr-feedback:empty{display:none}.review-sticker{display:inline-block;width:72px;height:72px;object-fit:contain;vertical-align:middle;margin:4px 5px;max-width:100%}.mr-excerpt .review-sticker{width:32px;height:32px;margin:0 3px}.cw-review-preview .review-sticker{width:48px;height:48px}.review-body{overflow-wrap:anywhere}
@media(max-width:760px){.fr-heading>span{display:none}.fr-composer form,.fr-heading{padding:17px}.fr-sticker-picker>div{grid-template-columns:repeat(4,minmax(0,1fr))}.fr-footer{flex-wrap:wrap}.fr-footer>div{margin-left:auto}}
.dt-review .review-sticker,.collection-review .review-sticker{width:40px;height:40px;margin:0 4px}
.mr-record-form .mr-form-help{font-size:11px!important;margin:13px 0!important}
.mr-record-form .btn-block{margin-top:4px}
.mr-record-form .mr-save-time{margin-top:10px!important}
@media(prefers-reduced-motion:no-preference){.main{animation:mr-page-enter .3s ease both}.mr-profile-hero,.cw-heading,.fd-heading{animation:mr-page-enter .38s ease both}.mr-work:nth-child(3n+2){--reveal-delay:40ms}.mr-work:nth-child(3n){--reveal-delay:80ms}.mr-filters a,.mr-stats a,.mr-pagination a{transition:background .18s,color .18s,border-color .18s}}
@media(max-width:1050px){.mr-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cw-layout{gap:25px;grid-template-columns:minmax(0,1fr) 220px}.fd-layout{gap:35px;grid-template-columns:minmax(0,1fr) 200px}}
@media(max-width:750px){.mr-profile-hero,.cw-heading{padding:25px;display:block}.mr-member{max-width:100%}.mr-profile-actions{align-items:flex-start;margin-top:20px}.mr-stats{grid-template-columns:1fr 1fr}.mr-work-grid{grid-template-columns:1fr}.cw-layout,.fd-layout{display:block}.cw-sidebar,.fd-toc{display:none}.cw-my-record{margin-top:20px}.fd-heading{padding:20px;gap:20px}.fd-heading h1{font-size:30px}.fd-heading>img{width:100px}.fd-types{grid-template-columns:1fr}.mr-records-heading{align-items:flex-start;flex-direction:column}.mr-hero-word{display:none}}
@media(max-width:600px){.fd-dates{grid-template-columns:minmax(0,1fr);gap:12px}.fd-dates>div{min-width:0;padding:20px}.fd-dates strong{overflow-wrap:anywhere}}
.mr-bio-dialog #member-nickname{width:100%;margin-top:10px}.mr-bio-dialog #nickname-help{font-size:12px;line-height:1.7;color:#897582;margin:8px 0 22px}.mr-member h1,.nav-user .nav-link{overflow-wrap:anywhere}

/* Catalogue and community charts share the site's editorial palette. */
.catalog-page,.ranking-page{background:#faf7f3}.catalog-page .main,.ranking-page .main{padding-top:26px}
.cl-eyebrow{font-size:10px!important;letter-spacing:.18em;color:#997283;margin:0 0 18px!important;font-weight:650}
.cl-hero{position:relative;display:flex;justify-content:space-between;min-height:235px;padding:30px 40px;background:#eee8ed;overflow:hidden;border-left:3px solid #b47c96}
.cl-hero h1,.rk-heading h1{font-size:38px;letter-spacing:-1px;line-height:1.35;margin:0 0 14px;color:#443747;font-weight:650}.cl-hero h1 em,.rk-heading h1 em{font-style:normal;color:#a96582}.cl-hero>div>p:last-child{font-size:13px;color:#817381;margin:0}
.cl-hero-art{position:relative;width:290px;flex:none}.cl-hero-art>img{position:absolute;right:66px;bottom:-50px;height:242px;width:165px;object-fit:contain;transform:rotate(-7deg);filter:drop-shadow(8px 8px 0 #fff9)}.cl-hero-circle{position:absolute;width:195px;height:195px;border:1px solid #c8aabd;border-radius:50%;right:38px;top:0}.cl-hero-circle:after{content:"";position:absolute;inset:13px;border:1px dashed #c8aabd;border-radius:50%}.cl-bookmark{position:absolute;right:0;top:0;writing-mode:vertical-rl;font-size:12px;letter-spacing:.2em;color:#866778;padding:16px;background:#faf6f0;box-shadow:3px 3px 0 #d6c8d2;transform:rotate(6deg)}.cl-bookmark b{font-size:24px;margin-top:10px}
.cl-search{padding:24px 0 0}.cl-search-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cl-search-heading h2{font-size:16px;margin:0;color:#534553}.cl-search-heading>a{font-size:12px;color:#956780}.cl-search .search-form{margin:0;gap:10px}.cl-search .input{background:#fff;border-color:#e0d8df;height:46px;font-size:14px}.cl-search .btn{white-space:nowrap;font-size:13px;border-radius:5px}.cl-mode{display:flex;gap:6px;align-items:center;margin:15px 0 30px;border-bottom:1px solid #e4dbe0;padding-bottom:13px}.cl-mode>a{padding:8px 16px;font-size:13px;color:#82727f;border-radius:3px}.cl-mode>a[aria-current]{background:#685365;color:white}.cl-mode>span{margin-left:auto;font-size:11px;color:#988b93}
.cl-shelf{margin-bottom:36px}.cl-shelf-heading{display:flex;justify-content:space-between;align-items:end;margin:0 0 23px}.cl-shelf-heading>div>span{font-size:9px;letter-spacing:.16em;color:#ae8c99}.cl-shelf-heading h2{font-size:23px;font-weight:600;margin:7px 0 0;color:#584452}.cl-shelf-heading p{margin:0;text-align:right;font-size:13px;color:#7c626f}.cl-shelf-heading small{display:block;font-size:11px;color:#998b92;margin-top:6px}
.cl-shelf .grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:27px 20px;counter-reset:story}.cl-shelf .game-card{position:relative;counter-increment:story;background:none;border:0;border-radius:0;overflow:visible;box-shadow:none;min-width:0}.cl-shelf .cover-box{height:212px;aspect-ratio:auto;border-radius:2px;background:#e8dfe5;padding:8px 9px 12px;box-shadow:0 8px 0 -4px #c6b5be,0 16px 16px -10px #66535b33;border-bottom:2px solid #d1c1ca}.cl-shelf .cover{background:transparent;object-fit:contain;filter:drop-shadow(3px 4px 3px #35283e20);border-radius:1px}.cl-shelf .card-body{padding:15px 0 0;gap:5px}.cl-shelf .card-title{font-size:14px;min-height:41px;line-height:1.5;color:#4c3e49}.cl-shelf .card-sub{font-size:10px;color:#a2959e;height:14px}.cl-shelf .card-meta{font-size:11px;line-height:1.5}.cl-shelf .card-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cl-shelf .card-meta [data-work-brand]{color:#8e657b}.cl-shelf .card-score{bottom:9px;left:8px;background:#5f4358;color:#fff!important;border-radius:3px;padding:4px 8px;font-size:13px}.cl-shelf .tag{font-size:9px;border-radius:2px;top:8px}.cl-shelf .tag-cn{background:#6e8f86}.cl-shelf .tag-r18{background:#bb8799}.cl-shelf .game-card:after{content:counter(story,decimal-leading-zero);position:absolute;right:0;top:227px;font-size:9px;color:#bda9b4;border-bottom:1px solid #dbcbd4;opacity:0;transition:opacity .2s}.cl-shelf .game-card:hover{transform:translateY(-5px);box-shadow:none}.cl-shelf .game-card:hover:after{opacity:1}.cl-shelf .game-card:hover .cover-box{background:#ded0da}
.rk-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:32px 38px;background:#ede6ed;border-top:3px solid #b485a0;position:relative;overflow:hidden}.rk-heading>div>p:last-child{font-size:13px;color:#887181;margin:0}.rk-heading h1{font-size:36px}.rk-heading-mark{position:relative;width:220px;display:flex;align-items:center;justify-content:center;gap:20px;transform:rotate(-8deg);border:1px solid #c3a5b8;padding:30px 20px}.rk-heading-mark:after{content:"";position:absolute;inset:7px;border:1px dashed #c3a5b8}.rk-heading-mark span{font-size:15px;line-height:1.5;letter-spacing:.12em;color:#a08298}.rk-heading-mark>b{font-size:65px;color:#b88ba4;line-height:1;font-weight:400}
.rk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px 0 20px}.rk-toolbar nav{display:flex;padding:4px;background:#eee6e9;border-radius:4px;gap:3px}.rk-toolbar a{padding:9px 20px;font-size:13px;color:#866c7c;border-radius:3px}.rk-toolbar a[aria-current]{background:#6c5065;color:#fff}.rk-toolbar p{font-size:12px;color:#7c6775}.rk-toolbar p>span{color:#a1909a}
.rk-podium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rk-podium{border:1px solid #decdd5;background:#f5edf0;padding:19px 21px 0;display:block;min-width:0;border-radius:3px;transition:transform .25s,box-shadow .25s}.rk-place-1{background:#f1e6dc;border-color:#d9bb9a}.rk-place-2{background:#ebe8f0;border-color:#c8bdd7}.rk-place-3{background:#f1e9eb;border-color:#d5b7c2}.rk-podium-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d7c7cc;padding-bottom:13px}.rk-podium-top>span{font-size:10px;color:#9c808b;letter-spacing:.1em}.rk-podium-top b{font-size:31px;font-weight:500;margin-left:3px;color:#775966}.rk-place-1 .rk-podium-top b{color:#a07241}.rk-podium-top>strong{font-size:11px;color:#987688;font-weight:500}.rk-podium-top i{font-size:17px;font-style:normal;margin-left:6px}.rk-podium-body{display:flex;align-items:center;gap:17px;padding:20px 0;min-height:163px}.rk-podium-cover{width:80px;height:118px;flex:none;background:#fffcf966;box-shadow:4px 5px 0 #b59ba218}.rk-podium-cover img{width:100%;height:100%;object-fit:contain}.rk-podium-cover>span{font-size:11px}.rk-podium-body>div:last-child{min-width:0}.rk-podium-body p{font-size:10px;color:#a38594;margin:0 0 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rk-podium h2{font-size:16px;line-height:1.55;margin:0;color:#56424f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rk-podium-score{display:flex;align-items:center;margin-top:11px;gap:7px}.rk-podium-score>b{font-size:34px;line-height:1.1;font-weight:550;color:#936b7f}.rk-place-1 .rk-podium-score>b{color:#9f7349}.rk-podium-score>span{font-size:10px;color:#a18a96}.rk-podium-score small{display:block;font-size:10px;margin-top:3px}.rk-podium-foot{display:flex;justify-content:space-between;border-top:1px solid #dcced3;padding:11px 0;font-size:10px;color:#967587}.rk-podium:hover{transform:translateY(-4px);box-shadow:0 12px 25px #62415412}
.rk-list{margin-top:36px}.rk-list>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:15px;border-bottom:2px solid #c5a9b9}.rk-list h2{font-size:19px;font-weight:600;margin:0;color:#654d5c}.rk-list h2 span{font-size:9px;letter-spacing:.12em;color:#ac95a2;margin-left:18px;font-weight:400}.rk-list>header>a{font-size:12px;color:#96667f}.rk-row{display:grid;grid-template-columns:38px 50px minmax(0,1fr) 76px 64px 100px 18px;align-items:center;gap:22px;padding:16px 15px;border-bottom:1px solid #e6dae1;transition:background .2s,transform .2s}.rk-number{font-size:24px;color:#bda4b1;font-weight:350}.rk-row-cover{width:50px;height:68px;background:#ece3e8;box-shadow:3px 3px 0 #cab5c02e}.rk-row-cover img{width:100%;height:100%;object-fit:contain}.rk-row-title h3{font-size:15px;color:#5e4957;margin:0 0 7px;font-weight:600;line-height:1.5}.rk-row-title p{font-size:11px;color:#94788b;margin:0}.rk-row-title p span{color:#ae9da7}.rk-row-score{font-size:24px;color:#a06c88;font-weight:550}.rk-row-count{font-size:17px;color:#82717c}.rk-row-score small,.rk-row-count small,.rk-row time small{display:block;font-size:10px;color:#b09ba7;font-weight:400;margin-top:3px}.rk-row time{font-size:11px;color:#98808d}.rk-row>i{font-size:18px;font-style:normal;color:#b190a3}.rk-row:hover{background:#f0e8ed;transform:translateX(3px)}.rk-note{font-size:11px;color:#a3919c;margin-top:24px;line-height:1.8}.rk-no-rest{font-size:13px;color:#988190}
/* Account portraits are independent of Kaeto's decorative illustrations. */
.av-profile-image{flex:none;width:98px;display:flex;flex-direction:column;align-items:center;gap:6px}.av-profile-image>img{width:88px;height:88px;object-fit:contain;border-radius:50%;background:#fff;border:5px solid #fff}.av-profile-image>button{font-size:10px;color:#9d617f;background:none;border:0;cursor:pointer;padding:4px}.av-profile-image>button:hover{text-decoration:underline}.av-dialog{border:1px solid #d5bccb;border-radius:9px;background:#fcf8fa;padding:27px 30px;width:min(650px,90vw);max-height:88vh;color:#57424f;box-shadow:0 25px 100px #3d253640}.av-dialog::backdrop{background:#3726338c;backdrop-filter:blur(5px)}.av-dialog header{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.av-dialog header p{font-size:9px;letter-spacing:.14em;color:#b48e9f;margin:0 0 7px}.av-dialog h2{font-size:24px;margin:0}.av-dialog header button{border:0;background:#eee1e9;color:#946880;font-size:23px;cursor:pointer;width:33px;height:33px;border-radius:50%}.av-preview{display:flex;gap:19px;align-items:center;padding:16px;background:#f0e6ed;margin-bottom:20px}.av-preview img{border:3px solid white;border-radius:50%;object-fit:contain;background:#fff}.av-preview strong{font-size:15px}.av-preview p{font-size:12px;color:#9a7c8d;margin:8px 0 0}.av-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;border:0;padding:0;margin:0}.av-options label{position:relative;cursor:pointer;min-width:0}.av-options input{position:absolute;opacity:0;width:1px;height:1px}.av-options label>span{position:relative;display:flex;flex-direction:column;align-items:center;padding:7px 3px;border:2px solid transparent;border-radius:5px;background:#fff}.av-options img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%;background:#faf4f7}.av-options small{font-size:9px;margin-top:7px;color:#a08292;white-space:nowrap}.av-options i{display:none;position:absolute;right:2px;top:2px;font-style:normal;color:#fff;background:#b66d91;border-radius:50%;width:17px;height:17px;font-size:12px;text-align:center}.av-options input:checked+span{border-color:#b77595;background:#fbecf4}.av-options input:checked+span i{display:block}.av-options input:focus-visible+span{outline:2px solid #8b5877;outline-offset:3px}.av-dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:23px;padding-top:18px;border-top:1px solid #e6d8e1}.av-dialog .btn{font-size:12px;border-radius:4px}
.festival-guide-button{display:flex!important;flex-direction:column;align-items:flex-start;gap:7px;padding:15px 23px!important;border-left:4px solid #eb6193!important;box-shadow:5px 5px 0 #9d345866}.festival-guide-button span{font-size:17px;font-weight:650}.festival-guide-button b{font-size:10px;letter-spacing:.03em;font-weight:400;color:#a36e87}.dt-event-actions{flex-wrap:wrap}.festival-guide-button:hover{transform:translateY(-3px)}
.cl-hero{min-height:185px;padding:24px 40px}.cl-hero h1{font-size:32px;line-height:1.3;margin-bottom:10px}.cl-hero .cl-eyebrow{margin-bottom:12px!important}.cl-hero-art>img{height:206px;width:145px;bottom:-39px}.cl-hero-circle{width:160px;height:160px;right:52px}.cl-search{padding-top:19px}.cl-mode{margin-bottom:23px}.cl-shelf-heading{margin-bottom:18px}.cl-shelf .card-sub{min-height:14px}.rk-heading{padding:24px 38px}.rk-heading h1{font-size:32px;line-height:1.3;margin-bottom:12px}.rk-heading .cl-eyebrow{margin-bottom:13px!important}
.cl-discover-note{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px;background:#eee7ec;border-left:2px solid #ba92aa;margin-bottom:24px}.cl-discover-note p{font-size:12px;color:#907689;margin:0}.cl-discover-note .btn{font-size:12px;padding:7px 14px;white-space:nowrap;background:#fff9fc;border-radius:3px;color:#94667f}.cl-search-mode{font-size:12px;font-weight:500;color:#986a82;padding:7px 14px;background:#f1e4ed}.rk-page-range{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#a08796;margin:-5px 0 20px}.rk-page-range nav{display:flex;align-items:center;gap:16px}.rk-page-range b{font-weight:400;font-size:11px}.rk-page-range a{font-size:12px;padding:6px 12px;background:#eee3eb;color:#95677f;border-radius:3px}.rk-page-range+.rk-list{margin-top:15px}.ranking-page .mr-pagination{margin:28px 0}.rk-podium-cover>span,.rk-row-cover>span{display:flex;align-items:center;justify-content:center;height:100%;font-size:10px;color:#aa92a1;text-align:center}
@media(prefers-reduced-motion:no-preference){.av-dialog[open]{animation:av-enter .24s ease both}.rk-podium:nth-child(2){--reveal-delay:70ms}.rk-podium:nth-child(3){--reveal-delay:140ms}.cl-hero-art>img{animation:cl-arrive .6s ease both}@keyframes av-enter{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@keyframes cl-arrive{from{opacity:0;transform:translateY(25px) rotate(0)}to{opacity:1;transform:translateY(0) rotate(-7deg)}}}
@media(max-width:950px){.cl-shelf .grid{grid-template-columns:repeat(4,minmax(0,1fr))}.rk-podium-grid{gap:10px}.rk-podium{padding:14px}.rk-podium-cover{width:58px;height:90px}.rk-podium-body{gap:10px}.rk-row{gap:13px}.cl-hero-art{width:220px}}
@media(max-width:650px){.cl-hero-art,.rk-heading-mark{display:none}.cl-hero,.rk-heading{padding:25px}.cl-hero h1,.rk-heading h1{font-size:28px}.cl-shelf .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cl-search-heading>a,.cl-mode>span{display:none}.cl-shelf-heading small{display:none}.rk-podium-grid{grid-template-columns:1fr}.rk-toolbar{display:block}.rk-row{grid-template-columns:30px 40px minmax(0,1fr) 45px;gap:10px}.rk-row-count,.rk-row time,.rk-row>i{display:none}.rk-list h2 span{display:none}.av-options{grid-template-columns:repeat(4,minmax(0,1fr))}.av-dialog{padding:20px}.cl-search .search-form{flex-wrap:wrap}}
/* Public browsing uses cached works; the notice also appears on partial details. */
.cl-guest-notice{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem 1rem;padding:14px 18px;margin:18px 0;color:var(--muted,#8f7c89);background:#f6eff4;border:1px solid #eadce5;border-radius:10px;font-size:.9rem;line-height:1.7}.cl-guest-notice a{color:var(--accent,#ba4775);font-weight:600;text-underline-offset:4px}

.ac-code-row{display:flex;gap:9px;align-items:stretch}.ac-code-row .input{min-width:0;flex:1}.ac-send-code{flex:none;min-width:112px;padding:10px;border:1px solid #d5b5c7;border-radius:5px;background:#f9eef4;color:#93466a;font:12px/1.4 inherit;cursor:pointer}.ac-send-code:disabled{cursor:wait;opacity:.7}.ac-send-code:focus-visible{outline:2px solid #a74770;outline-offset:2px}.ac-email-feedback{font-size:11px!important;line-height:1.65;color:#9c5577;margin:0!important}.ac-email-feedback:empty{display:none}.ac-strength-bars{display:flex;gap:5px;margin:4px 0 7px}.ac-strength-bars i{height:3px;background:#ece4e9;border-radius:2px;flex:1}.ac-strength[data-level="1"] i:first-child{background:#c57485}.ac-strength[data-level="2"] i:nth-child(-n+2){background:#bb936c}.ac-strength[data-level="3"] i:nth-child(-n+3){background:#a58ba9}.ac-strength[data-level="4"] i{background:#6f9d8c}.ac-strength p{font-size:10px!important;line-height:1.65;color:#95808e;margin:0!important}.ac-forgot{text-align:right;font-size:12px;color:#a14f76}.ac-reset-note{font-size:11px!important;line-height:1.75;color:#9b8292;margin:0!important}.au-register .au-form-side{padding-top:32px;padding-bottom:32px}.au-register .au-form-wrap{margin-top:28px}.au-register .au-footnote{margin-top:15px}.ac-security{border:1px solid #e6dae2;background:#fcf9fb;margin:0 0 28px;scroll-margin-top:95px}.ac-security summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px}.ac-security summary::-webkit-details-marker{display:none}.ac-security summary small{font-size:9px;letter-spacing:1.5px;color:#ad7e95;display:block;margin-bottom:6px}.ac-security summary strong{font-size:16px;color:#64505e}.ac-security-badge{font-size:12px;color:#9b567b}.ac-security-body{padding:0 24px 22px;border-top:1px solid #eee4ea}.ac-security-body>p{font-size:13px!important;line-height:1.8;color:#8d7686;margin:17px 0}.ac-bind-form{max-width:600px;display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}.ac-bind-form>.field:first-child,.ac-bind-form>.ac-reset-note{grid-column:1/-1}.ac-bind-form>.btn{justify-self:start;grid-column:1/-1}.ac-bind-form .field{min-width:0}.ac-bind-form .input{width:100%}.admin-invite-limit{display:flex;flex-direction:column;gap:5px;font-size:12px;min-width:170px;color:#876d7e}.inline-form-row .admin-invite-limit .input{min-width:0;width:180px}.ac-mail-status{font-size:12px;color:#8b6b7d}.ac-mail-status strong{color:#729282}@media(max-width:760px){.ac-bind-form{display:flex;flex-direction:column}.ac-security summary{padding:17px;align-items:flex-start}.ac-security-badge{font-size:11px;text-align:right}.ac-security-body{padding:0 17px 20px}.au-register .au-form-side{padding:35px 24px}.ac-send-code{min-width:105px}}

.battle-page,.battle-character-page,.battle-admin-page{--mb-pink:#bd477c;--mb-blue:#658cb1;--mb-ink:#483747;--mb-muted:#806d7e;color:var(--mb-ink)}
.mb-label{font-size:10px;letter-spacing:.18em;color:#a37691;margin:0 0 15px}.mb-hero{display:grid;grid-template-columns:1.3fr 1fr;min-height:340px;background:linear-gradient(115deg,#f5edf2,#f4f0f6 62%,#edf3f8);padding:40px 48px;position:relative;overflow:hidden;border-top:3px solid #b5688b}.mb-hero h1{font-size:clamp(36px,4vw,58px);line-height:1.2;letter-spacing:-.04em;margin:16px 0 20px}.mb-hero h1 em{font-style:normal;color:var(--mb-pink)}.mb-hero>div>p:not(.mb-label){font-size:13px;color:var(--mb-muted);line-height:1.8}.mb-hero>div>p>span{color:#b59aa9;margin:0 7px}.mb-hero-status{display:inline-block;background:#fff9;color:#a14c75;padding:5px 12px;border:1px solid #e6cfdd;font-size:11px;border-radius:20px}.mb-hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:25px;font-size:12px}.mb-hero-actions .btn{font-size:13px;border-radius:4px}.mb-hero aside{position:relative;display:flex;justify-content:center;align-items:center}.mb-hero aside>img{height:290px;width:220px;object-fit:contain;z-index:1;transform:rotate(-8deg)}.mb-hero-orbit{position:absolute;font-size:330px;line-height:1;color:#dcd4e955;right:0;top:-25px}.mb-hero-count{position:absolute;bottom:0;right:0;display:flex;gap:15px;align-items:center;z-index:2}.mb-hero-count>strong{font-size:74px;color:#b6819e;line-height:1}.mb-hero-count>span{font-size:13px}.mb-hero-count small{display:block;font-size:10px;color:var(--mb-muted);margin-top:9px}
.mb-overview{display:grid;grid-template-columns:.8fr 1fr 1.5fr 1fr;border-bottom:1px solid #eadfe6;padding:23px 0;gap:20px}.mb-overview>div{border-right:1px solid #eadfe6;padding:0 25px}.mb-overview>div:last-child{border:0}.mb-overview small{display:block;color:var(--mb-muted);font-size:11px;margin-bottom:8px}.mb-overview strong{font-size:22px;font-weight:600}.mb-overview strong>span{font-size:12px;font-weight:400;color:var(--mb-muted)}.mb-overview time{font-size:20px}.mb-section-nav{display:flex;gap:32px;padding:20px 0;font-size:13px;border-bottom:1px solid #eadfe6;overflow:auto;white-space:nowrap}.mb-section-nav a:hover{color:var(--mb-pink)}.mb-section{margin-top:46px;scroll-margin-top:90px}.mb-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.mb-heading .mb-label{margin-bottom:9px}.mb-heading h2{font-size:27px;line-height:1.4;margin:0;letter-spacing:-.03em}.mb-heading>span{font-size:11px;color:var(--mb-muted);max-width:260px;line-height:1.7}.mb-round-tabs{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #e5d6e0;background:#fbf9fb}.mb-round-tabs a{padding:14px 20px;border-right:1px solid #e5d6e0;color:var(--mb-muted)}.mb-round-tabs a:last-child{border:0}.mb-round-tabs b{display:block;font-size:13px}.mb-round-tabs small{display:block;font-size:10px;margin-top:6px}.mb-round-tabs a[aria-current]{background:#66475f;color:#fff}.mb-round-note{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin:18px 0;gap:15px;line-height:1.8}.mb-round-note small{color:var(--mb-muted);margin-left:8px;font-size:10px}.mb-round-note>b{color:var(--mb-pink);font-size:11px}.mb-draft-note{padding:13px 17px;background:#f7f0f5;color:#826c7e;font-size:12px;border-left:2px solid #bc81a2;margin-bottom:18px}.mb-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.mb-match{background:#fff;border:1px solid #e9dce5;scroll-margin-top:90px}.mb-match>header{padding:12px 18px;border-bottom:1px solid #efe5ec;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.07em}.mb-status{font-size:10px;font-weight:400;letter-spacing:0;color:var(--mb-muted)}.mb-status.open{color:var(--mb-pink)}.mb-status.settled{color:#528274}.mb-duel{display:grid;grid-template-columns:1fr 35px 1fr;gap:8px;padding:20px}.mb-versus{align-self:center;text-align:center;font-style:italic;font-weight:700;font-size:16px;color:#bc92aa}.mb-opponent{text-align:center;min-width:0}.mb-portrait{display:block;position:relative;margin:auto;width:100%;max-width:200px;height:150px;overflow:hidden;background:#f2edf3}.mb-portrait>img{width:100%;height:100%;object-fit:contain}.mb-portrait>span:not(.mb-image-empty){position:absolute;bottom:8px;left:8px;color:#fff;background:#6d566cc9;padding:3px 7px;font-size:9px;letter-spacing:.06em}.mb-opponent:last-child .mb-portrait{background:#edf2f6}.mb-image-empty{display:flex!important;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;font-size:35px;color:#b9a4b4;background:#f2edf3}.mb-image-empty small{font-size:10px;font-weight:400;margin-top:10px;color:#927f8f;letter-spacing:0}.mb-opponent-name h3{font-size:15px;margin:13px 0 5px;overflow-wrap:anywhere}.mb-opponent-name p{font-size:10px;color:var(--mb-muted);margin:0;min-height:30px;line-height:1.5;overflow-wrap:anywhere}.mb-votes{display:flex;gap:5px;justify-content:center;align-items:baseline;margin:9px 0}.mb-votes strong{font-size:25px;font-weight:600}.mb-votes span{font-size:10px;color:var(--mb-muted)}.mb-vote-button{display:block;width:100%;padding:9px 8px;border:1px solid #d1a2b8;background:#fff6fa;color:#a24670;font-size:12px;cursor:pointer;border-radius:3px}.mb-opponent:last-child .mb-vote-button{border-color:#afc0d3;color:#557c9f;background:#f3f8fc}.mb-vote-button:disabled{background:#bd477c!important;color:white!important;cursor:default}.mb-opponent.is-chosen .mb-portrait{outline:2px solid #b56a91;outline-offset:2px}.mb-vote-disabled{display:block;color:#9c8194;font-size:11px;padding:10px 0}.mb-vote-track{height:4px;background:#7d9fbe;margin:0 20px}.mb-vote-track>span{display:block;height:100%;background:#bf729b}.mb-match>footer{display:flex;justify-content:space-between;font-size:10px;line-height:1.6;color:var(--mb-muted);padding:12px 20px;gap:10px}
.mb-bracket-scroll{border:1px solid #e7dbe5;overflow:auto;background:linear-gradient(90deg,#f7f2f6,#fff 45%,#fff 55%,#f0f5f9);padding:25px 15px}.mb-bracket{display:grid;grid-template-columns:1fr 190px 1fr;min-width:1550px;gap:22px}.mb-bracket-wing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.mb-bracket-wing.right{direction:rtl}.mb-bracket-column{direction:ltr;min-width:0}.mb-bracket-column h3{text-align:center;font-size:11px;color:#8c7289;margin:0 0 14px}.right .mb-bracket-column h3{color:#6987a3}.mb-bracket-column>div{height:650px;display:flex;flex-direction:column;justify-content:space-around;gap:10px}.mb-mini-match{position:relative;display:block;width:100%;border:1px solid #d8bfd0;border-radius:3px;background:#fff;color:#7a6276;direction:ltr}.mb-mini-match>span{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:10px;padding:6px 7px;min-height:26px}.mb-mini-match>span+span{border-top:1px solid #eee4eb}.mb-mini-match b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-mini-match small{font-size:9px;flex-shrink:0}.mb-mini-match .is-winner{background:#f8edf4;color:#a83c73}.mb-bracket-column .mb-mini-match::after{content:'';width:16px;height:1px;background:#d5c3d0;position:absolute;top:50%;right:-17px}.right .mb-mini-match{border-color:#becfdc}.right .mb-bracket-column .mb-mini-match::after{right:auto;left:-17px;background:#c3d3df}.mb-bracket-final{display:flex;flex-direction:column;justify-content:center;text-align:center;gap:16px;padding:20px 0}.mb-bracket-final>p{font-size:10px;letter-spacing:.15em;color:#af8b4e;margin:0}.mb-trophy{font-size:60px;color:#c8a15d;line-height:1}.mb-bracket-final h3{font-size:21px;margin:0;color:#876645}.mb-bracket-final>small{font-size:10px;color:#9b8495}.mb-bracket-final .mb-mini-match{border-color:#d9c18c}
.mb-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.mb-character-card{display:grid;grid-template-columns:80px minmax(0,1fr);background:#f8f3f7;border:1px solid #eadde5;padding:12px;gap:12px;align-items:center}.mb-character-card>img,.mb-character-card>.mb-image-empty{width:80px;height:100px;object-fit:contain;background:#efe7f0}.mb-character-card small{font-size:9px;color:#9b7991}.mb-character-card h3{font-size:14px;margin:8px 0 5px;overflow-wrap:anywhere}.mb-character-card p{font-size:10px;color:var(--mb-muted);margin:0;line-height:1.6;overflow-wrap:anywhere}.mb-character-card div>span{font-size:9px;color:var(--mb-pink);display:block;margin-top:10px}.mb-roster-empty{display:flex;align-items:center;gap:30px;padding:35px;background:#f7f1f5;border:1px dashed #d8bdce}.mb-roster-empty>span:first-child{font-size:55px;font-family:serif;color:#bc99af}.mb-roster-empty h3{font-size:21px;margin:0 0 10px}.mb-roster-empty p{font-size:12px;color:var(--mb-muted);line-height:1.8;margin:0}.mb-roster-empty>span:last-child{margin-left:auto;font-size:10px;letter-spacing:.18em;color:#b597aa}.mb-quiet{padding:30px;background:#faf7fa;font-size:13px;color:#8a6f85}.mb-quiet p{font-size:12px;line-height:1.7}.mb-cheer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mb-cheer{padding:20px 24px;border:1px solid #e9dce5;background:#fff}.mb-cheer>header{display:flex;gap:13px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--mb-muted);margin-bottom:15px}.mb-cheer>header>a{display:flex;gap:8px;align-items:center;color:var(--mb-ink)}.mb-cheer img:not(.review-sticker){border-radius:50%;object-fit:cover}.mb-cheer time{margin-left:auto;font-size:10px}.mb-cheer>div{font-size:13px;line-height:1.9;overflow-wrap:anywhere}.mb-cheer .review-sticker{width:64px;height:64px;object-fit:contain;vertical-align:middle}.mb-remove{font-size:10px;color:#a78599;background:none;border:0;padding:0;margin-top:10px;cursor:pointer}.mb-pagination{display:flex;justify-content:center;gap:30px;padding:20px;font-size:12px;color:#9b6784}.mb-rules{padding:30px;background:#f7f1f5;margin:50px 0 20px;scroll-margin-top:90px}.mb-rules>div{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.mb-rules article>b{font-size:12px;letter-spacing:.1em;color:#b2809d}.mb-rules h3{font-size:14px;margin:10px 0}.mb-rules p{font-size:12px;line-height:1.9;color:var(--mb-muted);margin:0}.mb-back{display:block;font-size:12px;color:#926980;margin:15px 0 25px}.mb-character-hero{display:grid;grid-template-columns:260px 1fr;gap:45px;background:linear-gradient(120deg,#f5edf3,#f1f4f9);padding:35px}.mb-character-large{height:320px}.mb-character-large img{width:100%;height:100%;object-fit:contain}.mb-character-hero h1{font-size:40px;margin:15px 0}.mb-character-work{font-size:16px;color:#826e80}.mb-character-intro{white-space:pre-wrap;font-size:14px;line-height:1.9;max-width:650px;margin:24px 0;overflow-wrap:anywhere}.mb-text-link{font-size:12px;margin-left:20px}.mb-composer{border:1px solid #ddc5d4;background:#fffafb;padding:24px;margin-bottom:25px;scroll-margin-top:90px}.mb-composer header{display:flex;align-items:center;gap:12px;margin-bottom:20px;font-size:13px}.mb-composer header img{border-radius:50%}.mb-composer header span{font-size:11px;color:var(--mb-muted)}.mb-composer textarea{width:100%;line-height:1.8;resize:vertical;font-size:14px}.mb-composer-tools{display:flex;align-items:center;gap:20px;margin-top:15px}.mb-composer-tools>button:not(.btn){border:0;background:#f1e3eb;color:#965f7e;font-size:12px;padding:9px 13px;cursor:pointer}.mb-composer-tools>span{font-size:11px;color:#9a7b90;margin-left:auto}.mb-composer p{font-size:10px;line-height:1.6;color:var(--mb-muted);margin:15px 0 0}.mb-stickers{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;padding:15px;background:#f6eef3;margin-top:15px}.mb-stickers[hidden]{display:none}.mb-stickers button{border:1px solid #e4d2de;background:#fff;border-radius:4px;padding:4px;cursor:pointer;min-width:0}.mb-stickers img{width:100%;height:65px;object-fit:contain}
.mb-admin-header{display:flex;align-items:center;gap:25px;margin:20px 0 30px}.mb-admin-header>div{margin-right:auto}.mb-admin-header h1{margin:0}.mb-admin-header p:not(.mb-label){font-size:12px;color:var(--mb-muted);margin-bottom:0}.mb-admin-form .panel>p,.battle-admin-page .panel>p{font-size:12px;line-height:1.8;color:var(--mb-muted)}.mb-admin-fields{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:20px}.mb-admin-fields label,.mb-admin-roster label,.mb-admin-rounds label{font-size:12px;color:#7b6776;display:block}.mb-admin-fields .input,.mb-admin-roster .input,.mb-admin-rounds .input{width:100%;margin-top:8px;font-size:13px}.mb-admin-rounds>div{display:grid;grid-template-columns:110px 1fr 1fr 80px;gap:25px;align-items:center;padding:15px 0;border-top:1px solid #eadfe6;font-size:12px}.mb-admin-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mb-admin-roster details{border:1px solid #e4d2de;padding:14px;background:#fffafb}.mb-admin-roster summary{cursor:pointer;font-size:13px}.mb-admin-roster summary>b{color:#ac728f;margin:0 10px}.mb-admin-roster summary>span{font-size:10px;color:#9b8294;float:right}.mb-admin-roster details>div{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.mb-admin-roster label:nth-child(n+3){grid-column:1/-1}.mb-admin-preview{display:flex;align-items:center;gap:15px;font-size:11px;color:#a27e96;grid-column:1/-1}.mb-admin-preview>img,.mb-admin-preview>.mb-image-empty{width:75px;height:85px;object-fit:contain}.mb-admin-save{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#f4e9ef;padding:20px 25px;position:sticky;bottom:10px;z-index:5;font-size:12px;margin:20px 0 35px;box-shadow:0 4px 20px #50334413}.mb-settle-form{margin-top:25px}.mb-settle-form>div{display:flex;justify-content:space-between;gap:20px;font-size:13px;padding:14px 0;border-top:1px solid #eadfe6}.mb-settle-form .input{font-size:12px;padding:8px}.mb-settle-form>button{margin-top:20px}
@media(prefers-reduced-motion:no-preference){.mb-hero aside>img{animation:mb-float 5s ease-in-out infinite}.mb-hero-orbit{animation:mb-turn 40s linear infinite}.mb-vote-button,.mb-character-card,.mb-mini-match{transition:background .2s,transform .2s,border-color .2s}.mb-vote-button:hover:not(:disabled),.mb-character-card:hover{transform:translateY(-2px)}@keyframes mb-float{50%{transform:rotate(-5deg) translateY(-7px)}}@keyframes mb-turn{to{transform:rotate(360deg)}}}
@media(max-width:1000px){.mb-hero{padding:30px}.mb-hero aside>img{width:160px;height:240px}.mb-hero-count{right:-10px}.mb-hero-count>strong{font-size:54px}.mb-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.mb-overview{gap:10px}.mb-overview>div{padding:0 15px}.mb-overview strong,.mb-overview time{font-size:17px}.mb-rules>div{grid-template-columns:1fr 1fr}.mb-hero-orbit{font-size:240px}}
@media(max-width:650px){.mb-hero{padding:25px 20px;grid-template-columns:1fr 90px;min-height:280px}.mb-hero h1{font-size:32px}.mb-hero aside>img{width:100px;height:190px;transform:rotate(-5deg)}.mb-hero-count{bottom:-8px;right:0;gap:5px}.mb-hero-count>strong{font-size:33px}.mb-hero-count span{font-size:9px}.mb-hero-count small,.mb-hero-orbit{display:none}.mb-hero .mb-label{font-size:8px;letter-spacing:.1em}.mb-hero>div>p:not(.mb-label){font-size:11px}.mb-hero-actions{gap:12px}.mb-hero-actions .btn{font-size:11px;padding:10px}.mb-overview{grid-template-columns:1fr 1fr;row-gap:22px;padding:20px 0}.mb-overview>div:nth-child(2){border:0}.mb-section-nav{gap:24px;font-size:12px}.mb-section{margin-top:32px}.mb-heading{display:block}.mb-heading h2{font-size:23px}.mb-heading>span{display:block;margin-top:10px}.mb-round-tabs a{padding:10px 5px;text-align:center}.mb-round-tabs b{font-size:11px}.mb-round-tabs small{font-size:8px}.mb-round-note{display:block;font-size:11px}.mb-round-note>b{display:block;margin-top:5px}.mb-round-note small{display:block;margin-left:0}.mb-match-grid,.mb-cheer-list{grid-template-columns:1fr}.mb-match-grid{gap:16px}.mb-duel{padding:15px;gap:5px}.mb-portrait{height:160px}.mb-roster{gap:10px}.mb-character-card{padding:8px;grid-template-columns:1fr;gap:8px}.mb-character-card>img,.mb-character-card>.mb-image-empty{width:100%;height:140px}.mb-character-card h3{font-size:13px}.mb-roster-empty{padding:20px;gap:20px}.mb-roster-empty>span:last-child{display:none}.mb-roster-empty h3{font-size:18px}.mb-rules{padding:22px}.mb-rules>div{gap:20px}.mb-character-hero{padding:25px 20px;grid-template-columns:120px 1fr;gap:20px}.mb-character-large{height:200px}.mb-character-hero h1{font-size:28px}.mb-character-work{font-size:12px}.mb-character-intro{font-size:12px;margin:15px 0}.mb-character-hero .btn{font-size:11px}.mb-text-link{display:block;margin:15px 0 0}.mb-composer{padding:18px}.mb-composer header{flex-wrap:wrap}.mb-composer-tools{gap:10px;flex-wrap:wrap}.mb-composer-tools .btn{font-size:12px}.mb-stickers{grid-template-columns:repeat(4,1fr)}.mb-stickers img{height:55px}.mb-admin-header{flex-wrap:wrap}.mb-admin-fields,.mb-admin-roster{grid-template-columns:1fr}.mb-admin-rounds>div{grid-template-columns:1fr 1fr;gap:12px}.mb-admin-rounds strong{grid-column:1/-1}.mb-admin-save>span{font-size:10px}.mb-admin-save{padding:15px}.mb-settle-form>div{flex-direction:column}}
.mb-bracket .mb-bracket-column>div{position:relative;gap:0}.mb-bracket-lines{position:absolute;left:100%;top:0;width:16px;height:650px;overflow:visible;pointer-events:none;fill:none;stroke:#d5c3d0;stroke-width:1}.right .mb-bracket-lines{left:auto;right:100%;transform:scaleX(-1);stroke:#c3d3df}.mb-bracket-column:not(:last-child) .mb-mini-match::after{display:none}
.mb-bracket-final{position:relative;padding-bottom:150px}.mb-bracket-final .mb-mini-match{position:absolute;left:0;top:calc(50% + 12px);transform:translateY(-50%)}.mb-bracket-final>small{position:absolute;left:0;right:0;top:calc(50% + 53px)}
.mb-bracket-final>p{position:absolute;left:0;right:0;top:calc(50% - 160px)}.mb-bracket-final>.mb-trophy{position:absolute;left:0;right:0;top:calc(50% - 130px)}.mb-bracket-final>h3{position:absolute;left:0;right:0;top:calc(50% - 55px)}
.mb-demo-banner{margin:24px 0 32px;padding:28px;background:#faf4f7;border:1px solid #e6d4dd;border-top:4px solid #ac4773;display:grid;grid-template-columns:1fr 300px;gap:24px}.mb-demo-banner h2{margin:8px 0 12px;font-size:26px}.mb-demo-banner p{line-height:1.7;max-width:780px}.mb-demo-banner small{color:#806b78}.mb-demo-banner form{display:grid;align-content:start;gap:10px}.mb-demo-banner footer{grid-column:1/-1;border-top:1px solid #e6d4dd;padding-top:18px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:14px}.mb-demo-banner footer span{flex:1;color:#806b78}.mb-demo-banner footer a{color:#ac4773}.mb-demo-entry{display:flex;align-items:center;gap:20px;padding:18px 22px;margin:20px 0;background:#faf4f7;border:1px solid #e6d4dd}.mb-demo-entry>div{flex:1;display:grid;gap:5px}.mb-demo-entry span{font-size:14px;color:#806b78}.mb-picture-credit{font-size:13px;color:#806b78;grid-column:1/-1;margin:0}.mb-picture-credit a{color:#ac4773}@media(max-width:700px){.mb-demo-banner{grid-template-columns:1fr;padding:20px}.mb-demo-banner footer{gap:12px}.mb-demo-banner footer span{flex-basis:100%}.mb-demo-entry{align-items:start;flex-direction:column;gap:12px}}
.mb-match-grid:has(>.mb-match:only-child)>.mb-match{grid-column:1/-1;width:100%;max-width:800px;margin-inline:auto}
.mb-arena{position:relative;display:grid;grid-template-columns:1.05fr 1fr;min-height:410px;overflow:hidden;background:#fff6e9;border:1px solid #ecddcd;padding:36px 40px 65px;color:#334251}.mb-arena:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent 0 18px,#efdfcc55 18px 19px);pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000)}.mb-arena-copy{position:relative;z-index:2}.mb-arena-label{font-size:10px;letter-spacing:.18em;font-weight:600;color:#9b7364;margin:0 0 18px}.mb-arena-state{display:inline-block;background:#fff;border:1px solid #ebceb7;border-radius:4px;padding:5px 10px;font-size:11px;color:#ad6b4f}.mb-arena h1{font-size:clamp(35px,4.3vw,60px);line-height:1.2;letter-spacing:-.035em;margin:18px 0;color:#344450;max-width:460px}.mb-arena-event{font-size:12px;line-height:1.9;color:#8f7166;max-width:450px}.mb-arena-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:12px;margin-top:22px}.mb-arena-actions .btn{background:#e17260;border-color:#e17260;color:#fff;border-radius:3px;box-shadow:4px 4px 0 #e4c6af;font-size:13px}.mb-arena-actions a:not(.btn){color:#647d88}.mb-cheer-scene{position:relative;height:310px;align-self:center;min-width:0}.mb-scene-track{position:absolute;bottom:44px;left:0;right:0;height:115px;background:#e9d8c1;clip-path:polygon(12% 0,89% 0,100% 100%,0 100%);border-bottom:10px solid #bb9b7e}.mb-scene-track:after{content:'';position:absolute;inset:8px 28px;background:repeating-linear-gradient(0deg,transparent 0 23px,#fff8 24px 25px)}.mb-scene-character{position:absolute;object-fit:contain;filter:drop-shadow(0 8px 1px #92664c18)}.mb-scene-ai{height:180px;width:145px;left:0;bottom:78px;transform:rotate(-8deg)}.mb-scene-yuki{height:185px;width:145px;right:0;bottom:70px;transform:rotate(9deg)}.mb-scene-kaeto{height:235px;width:185px;left:50%;bottom:35px;transform:translateX(-50%);z-index:2}.mb-scene-sticker{position:absolute;top:10px;padding:8px 16px;border:2px solid #fff;font-size:13px;font-weight:800;letter-spacing:.1em;box-shadow:3px 3px 0 #a07c531a}.mb-scene-a{left:0;transform:rotate(-10deg);background:#d8edf0;color:#5a8694}.mb-scene-b{right:0;top:35px;transform:rotate(10deg);background:#f7ddd3;color:#cc7661}.mb-scene-star{position:absolute;left:46%;top:-8px;font-size:44px;color:#dfb764;transform:rotate(20deg)}.mb-scene-ticket{position:absolute;bottom:4px;right:-4px;display:flex;gap:10px;align-items:center;z-index:3;padding:11px 16px;background:#fffcf3;border:1px dashed #cdb498;transform:rotate(-4deg)}.mb-scene-ticket strong{font-size:40px;line-height:1;color:#c87b61}.mb-scene-ticket span{font-size:12px;color:#705b4d}.mb-scene-ticket small{display:block;font-size:9px;margin-top:7px}.mb-scene-note{position:absolute;bottom:-25px;left:0;right:0;text-align:center;font-size:9px;color:#9c826f}.mb-arena-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;background:#f0e5d7;padding:12px 25px;font-size:10px;color:#98765e;z-index:4}.mb-arena-bottom button{border:0;background:none;color:#8d6c5d;cursor:pointer;font-size:10px}.battle-page,.battle-character-page{--mb-pink:#cd7566;--mb-blue:#729bab;--mb-ink:#3e4851;--mb-muted:#8c7c79}.battle-page .mb-label{color:#af8771}.battle-page .mb-section-nav a:hover{color:#be715c}.battle-page .mb-round-tabs{background:#fffaf2;border-color:#e5d3c0}.battle-page .mb-round-tabs a{border-color:#e5d3c0}.battle-page .mb-round-tabs a[aria-current]{background:#66828c;color:#fff}.battle-page .mb-portrait{background:#f8ede5}.battle-page .mb-opponent:last-child .mb-portrait{background:#eaf3f4}.battle-page .mb-match{border-color:#e1d9d0;box-shadow:0 3px 0 #ede2d5}.battle-page .mb-match>header{background:#fbf7f0;border-bottom-color:#ebe2d8}.battle-page .mb-versus{color:#c28571}.battle-page .mb-opponent.is-chosen .mb-portrait{outline-color:#d6947f}.battle-page .mb-vote-button{border-color:#e3b8a7;color:#bc7059;background:#fff7ef}.battle-page .mb-vote-track{background:#79a4af}.battle-page .mb-vote-track>span{background:#de9983}.battle-page .mb-character-card{background:#fffaf2;border-color:#e8dccf;position:relative}.battle-page .mb-character-card:before{content:'';position:absolute;left:0;top:15px;bottom:15px;width:3px;background:#d6a184}.battle-page .mb-character-card:nth-child(n+17):before{background:#84a9b4}.battle-page .mb-rules{background:#f6f1e8}.battle-page .mb-bracket-scroll{background:linear-gradient(90deg,#faf0e4,#fff 45%,#fff 55%,#edf5f5)}.battle-page .mb-demo-banner{border-top-color:#cf806b;background:#fff8ee}.battle-page .mb-demo-entry{background:#fff8ee;border-color:#e5d7c7}.battle-page .mb-cheer{border-color:#e7ded3}.mb-arrival{border:0;width:min(660px,95vw);height:370px;background:#fff4e3;padding:32px;overflow:hidden;color:#394e5a}.mb-arrival::backdrop{background:#2c3f4ae8;backdrop-filter:blur(5px)}.mb-arrival>button{position:absolute;top:20px;right:20px;z-index:2;border:0;background:#eacbb2;color:#765842;font-size:12px;padding:10px 14px;cursor:pointer}.mb-arrival>div{position:relative;margin-top:55px}.mb-arrival span{font-size:10px;letter-spacing:.15em;color:#b18665}.mb-arrival h2{font-size:49px;line-height:1.25;margin:20px 0}.mb-arrival img{position:absolute;right:0;top:-20px;width:185px;height:250px;object-fit:contain}
@media(prefers-reduced-motion:no-preference){.mb-scene-kaeto{animation:mb-arena-bounce 3.5s ease-in-out infinite}.mb-arrival[open] h2{animation:mb-arena-enter .4s both}.mb-arrival[open] img{animation:mb-arena-enter .5s .15s both}.mb-match,.mb-character-card{transition:box-shadow .2s,transform .2s}@keyframes mb-arena-bounce{50%{translate:0 -9px}}@keyframes mb-arena-enter{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}}
@media(max-width:900px){.mb-arena{padding:28px 25px 60px;grid-template-columns:1fr 1fr}.mb-arena h1{font-size:40px}.mb-cheer-scene{height:280px}.mb-scene-ai,.mb-scene-yuki{width:105px;height:150px}.mb-scene-kaeto{width:145px;height:200px}.mb-scene-ticket{right:-5px;padding:9px}.mb-scene-sticker{font-size:10px;padding:7px 10px}}
@media(max-width:600px){.mb-arena{grid-template-columns:1fr;padding:24px 20px 54px;gap:12px}.mb-arena h1{font-size:37px;max-width:100%;margin:15px 0}.mb-arena-label{font-size:9px;margin-bottom:12px}.mb-arena-event{font-size:11px}.mb-arena-actions{font-size:11px;gap:14px;margin-top:16px}.mb-arena-actions .btn{font-size:12px}.mb-cheer-scene{height:225px;width:100%;max-width:370px;justify-self:center;margin-bottom:10px}.mb-scene-ai,.mb-scene-yuki{width:100px;height:135px;bottom:55px}.mb-scene-kaeto{height:195px;width:140px;bottom:22px}.mb-scene-track{bottom:30px;height:88px}.mb-scene-sticker{top:8px}.mb-scene-b{top:20px}.mb-scene-star{top:-5px;font-size:33px}.mb-scene-ticket{bottom:0;right:0}.mb-scene-ticket strong{font-size:31px}.mb-scene-ticket span{font-size:10px}.mb-scene-ticket small{font-size:8px}.mb-scene-note{bottom:-20px;font-size:8px}.mb-arena-bottom{padding:11px 16px;font-size:9px}.mb-arena-bottom button{font-size:9px}.mb-arrival{height:310px;padding:24px}.mb-arrival h2{font-size:35px}.mb-arrival img{width:120px;height:200px;right:-10px;top:8px}.mb-arrival span{font-size:8px}}

.mb-visibility-control { border-top: 4px solid #b15380; margin-bottom: 24px; }
.mb-visibility-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 20px; }
.mb-visibility-actions form { margin: 0; }

.mb-image-upload { padding: 16px; border: 1px dashed #d4b7c7; border-radius: 8px; background: #fff7fb; }
.mb-image-upload small { display: block; margin-top: 10px; color: #8a7180; font-size: 12px; }
.mb-image-upload p { margin: 8px 0 0; font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.mb-image-upload button:disabled, .mb-admin-save button:disabled { opacity: .6; cursor: wait; }

.footer{margin-top:65px;background:#f6f3f5!important;border-top:1px solid #e8dfe4;padding:32px 0 18px!important}.footer-inner{display:grid!important;grid-template-columns:1fr 1.35fr 1.05fr;gap:42px!important;align-items:start;font-size:12px!important}.footer-brand>a{display:flex;align-items:center;gap:12px;color:#4c3949}.footer-brand strong{font-size:20px}.footer-brand>span{display:block;margin-top:12px;color:#7f7280}.footer-brand>p{font-size:12px;line-height:1.8;margin:12px 0;color:#957f90}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.footer-links>div{display:grid;gap:10px}.footer-links strong,.footer-note>strong{font-size:12px;color:#594450;margin-bottom:4px}.footer-links a{color:#8f7384;font-size:12px}.footer-note{max-width:none!important;line-height:1.8!important;font-size:12px!important}.footer-note p{margin:9px 0}.footer-note a{color:#9e557a}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e6dce2;margin-top:24px;padding-top:14px;color:#9a8895;font-size:11px}.footer-bottom a{color:#8d647c}
.site-edit-bar{position:fixed;bottom:16px;left:18px;z-index:60;display:flex;align-items:center;gap:13px;max-width:calc(100% - 110px);background:#423c48;color:#fff;padding:10px 16px;border-radius:10px;box-shadow:0 6px 25px #332c4330;font-size:11px}.site-edit-bar span{color:#eac1d7}.site-edit-bar button{border:0;background:#f4e8f0;color:#714159;border-radius:5px;padding:7px 10px;font-size:11px;cursor:pointer}.site-edit-bar button[aria-pressed=true]{background:#ffd27d;color:#493728}.site-editing [data-site-text],.site-editing [data-site-image]{outline:2px dashed #b84276;outline-offset:3px;cursor:pointer!important}.site-edit-dialog{border:1px solid #dcc5d2;border-radius:12px;max-width:560px;width:calc(100% - 36px);padding:28px;color:#5b4152}.site-edit-dialog::backdrop{background:#33223570;backdrop-filter:blur(4px)}.site-edit-dialog header{display:flex;justify-content:space-between;margin-bottom:24px}.site-edit-dialog header button{border:0;background:none;font-size:24px;cursor:pointer}.site-edit-dialog label{font-size:13px;display:grid;gap:10px}.site-edit-dialog textarea{width:100%;resize:vertical}.site-edit-dialog p{font-size:12px;color:#96788b}.site-edit-dialog footer{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.sa-heading{margin:25px 0 40px}.sa-heading h1{font-size:32px;margin:12px 0}.sa-heading p{line-height:1.8;color:#977788;font-size:14px;max-width:800px}.sa-heading nav{display:flex;gap:20px;flex-wrap:wrap;color:#a14375;font-size:13px}.sa-assets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:25px}.sa-assets article{display:grid;gap:10px;border:1px solid #e7dbe3;padding:12px;min-width:0}.sa-assets img{height:140px;width:100%;object-fit:contain;background:#f6eff4}.sa-assets code{overflow-wrap:anywhere;font-size:11px}.sa-assets button{border:0;padding:8px;background:#efe1e9;color:#8f5271;cursor:pointer}.sa-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.sa-fields form{border:1px solid #e5d8e1;padding:18px}.sa-fields label{display:grid;gap:10px;font-size:13px}.sa-fields footer{display:flex;gap:15px;margin-top:13px}.sa-audit p{display:grid;grid-template-columns:100px 120px 1fr;gap:12px;font-size:12px;border-bottom:1px solid #e9e1e6;padding-bottom:12px}.sa-audit small{grid-column:1/-1;overflow-wrap:anywhere;color:#947b8b}.site-admin-page .panel>form{display:grid;gap:15px;max-width:600px}.site-admin-page input[type=file]{display:block;margin:10px 0;width:100%}.site-admin-page .panel>p{font-size:12px;color:#8b7483;line-height:1.8}img{-webkit-touch-callout:none}#gallery img,.dt-art-gallery img,.poster-dialog[data-image-download=allow] img{-webkit-touch-callout:default}
.main{padding-bottom:40px}.footer{margin-top:20px}.footer-bottom>a{margin-right:85px}
@media(max-width:900px){.footer-inner{grid-template-columns:1fr 1.5fr}.footer-note{grid-column:1/-1}.sa-assets{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer{padding-top:26px!important}.footer-inner{grid-template-columns:1fr;gap:25px!important}.footer-note{grid-column:auto}.footer-bottom{flex-wrap:wrap;font-size:10px}.footer-links{gap:10px}.site-edit-bar{gap:8px;flex-wrap:wrap;bottom:10px;left:10px;max-width:calc(100% - 90px);font-size:10px}.site-edit-bar span{display:none}.site-edit-bar a{font-size:10px}.sa-fields{grid-template-columns:1fr}.sa-audit p{grid-template-columns:1fr 1fr}.sa-audit code{grid-column:1/-1}}

.ya-entry{position:relative;display:flex;align-items:center;gap:24px;padding:24px 30px;margin:28px 0;border:1px solid #d6bfb0;border-radius:12px;background:linear-gradient(115deg,#fcf0db,#f7e5ed 60%,#e6e5f1);color:#584d5e;overflow:hidden}.ya-entry div{position:relative;z-index:1;flex:1}.ya-entry small{display:block;font-size:10px;letter-spacing:.16em;color:#9a6f71}.ya-entry strong{display:block;font-size:24px;margin:9px 0}.ya-entry div>span{font-size:13px;line-height:1.7}.ya-entry>b{font-size:76px;letter-spacing:-.08em;color:#ba92943b;line-height:1}.ya-entry-arrow{font-size:28px}.ya-entry:hover{border-color:#b98592}.ya-admin-actions{display:flex;flex-wrap:wrap;gap:12px}.ya-admin-form{display:grid;grid-template-columns:180px minmax(240px,1fr) auto;gap:20px;align-items:end}.ya-admin-form label{display:grid;gap:9px}.annual-analysis-page .main{max-width:1280px;padding-top:22px}.ya-report{--ya-ink:#403d50;--ya-muted:#8a7a86;--ya-pink:#ab6686;--ya-gold:#bc9c65;color:var(--ya-ink)}.ya-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;font-size:12px;color:var(--ya-muted)}.ya-toolbar button{border:1px solid #dfd2d9;border-radius:30px;background:#fff9fa;color:#8f6a82;padding:8px 14px;font:inherit;cursor:pointer}.ya-stage{position:relative;isolation:isolate;border:1px solid #ddd0d6;border-radius:18px;overflow:hidden;box-shadow:0 18px 65px #8f768617;background:#fbf6ec}.ya-chapter{position:relative;min-height:660px;padding:48px 60px;overflow:hidden;background:#fbf6ec}.ya-chapter:not(:first-of-type){border-top:1px solid #e2d6cd}.ya-enhanced .ya-chapter:not(.is-active){display:none}.ya-enhanced .ya-chapter{border-top:0}.ya-kicker{position:relative;font-size:10px;letter-spacing:.18em;color:#a28072;font-weight:600;margin:0 0 18px}.ya-chapter h1,.ya-chapter h2{position:relative;font-size:clamp(32px,4vw,53px);line-height:1.25;letter-spacing:-.025em;margin:0 0 20px;font-weight:750}.ya-chapter h1 span,.ya-ending h2>span{color:#a5687b}.ya-copy{position:relative;color:#897779;font-size:13px;line-height:1.9;margin:0 0 26px;max-width:640px}.ya-intro{min-height:660px;display:flex;align-items:center;background:#fbf4e6}.ya-film-art{position:absolute;inset:0 0 0 30%;overflow:hidden}.ya-film-art img{width:100%;height:100%;object-fit:cover;object-position:62% 50%;transform:scale(1.035);opacity:.92}.ya-film-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fbf4e6 0%,#fbf4e6ed 9%,#fbf4e634 45%,#65382f10),linear-gradient(0deg,#fbf4e6b3,transparent 40%)}.ya-intro-copy{position:relative;width:58%;z-index:2;padding-bottom:24px}.ya-year{display:flex;align-items:center;gap:15px;font-size:74px;letter-spacing:-.09em;line-height:1;color:#b7957b;margin:0 0 24px}.ya-year>span{font-size:11px;letter-spacing:.25em;writing-mode:vertical-rl}.ya-member{display:flex;align-items:center;gap:12px;margin:30px 0 28px;font-size:13px}.ya-member img{border-radius:50%;border:2px solid #fff;object-fit:cover}.ya-member small{display:block;margin-top:5px;color:#927f83;font-size:9px;letter-spacing:.09em}.ya-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 22px;background:#80667c;color:#fff!important;border-radius:4px;font-size:13px;box-shadow:4px 4px 0 #c6b19d6b;transition:transform .2s,background .2s}.ya-primary:hover{background:#a46583;transform:translateY(-2px)}.ya-ticket{position:absolute;right:26px;bottom:75px;z-index:3;background:#fffcf2;border:1px dashed #b8a084;padding:18px 25px;transform:rotate(5deg);box-shadow:4px 7px 20px #6d452318;text-align:center}.ya-ticket>span{font-size:8px;letter-spacing:.15em;color:#ac8d71}.ya-ticket strong{display:block;font-size:65px;line-height:1.1;color:#9d6f69}.ya-ticket small{font-size:10px;color:#aa897e}.ya-film-caption{position:absolute;left:60px;bottom:14px;font-size:10px;letter-spacing:.18em;color:#ab8776}.ya-ambient{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden}.ya-ambient i{position:absolute;left:var(--x);top:var(--y);font-style:normal;color:#c7a67480;font-size:15px}.ya-footprints{background:radial-gradient(ellipse at 10% 100%,#efdae1,transparent 55%),#faf4e9}.ya-footprint-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:45px;margin:35px 0 22px;align-items:center}.ya-big-number{position:relative;display:flex;align-items:end;gap:22px}.ya-big-number>strong{font-size:170px;line-height:.95;letter-spacing:-.07em;color:#a16a82}.ya-big-number>span{font-size:13px;color:#8d7581;line-height:1.9;margin-bottom:10px}.ya-big-number i{position:absolute;right:8%;top:-10px;font-size:65px;color:#c3a57a;font-style:normal}.ya-metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ddcdd1;border-left:1px solid #ddcdd1}.ya-metrics article{padding:20px 25px;display:grid;gap:9px;border-right:1px solid #ddcdd1;border-bottom:1px solid #ddcdd1}.ya-metrics small{font-size:11px;color:#9b8189}.ya-metrics strong{font-size:36px;font-weight:650;color:#765b72;line-height:1.1}.ya-metrics span{font-size:10px;color:#a08790}.ya-note-strip{display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;border-top:1px solid #dfcdd4;padding-top:20px;color:#a1848e;font-size:10px;line-height:1.7}.ya-favorites{background:linear-gradient(130deg,#eeedf4,#fbf7f0 70%)}.ya-favorites h2{font-size:35px;max-width:500px}.ya-favorite-layout{display:grid;grid-template-columns:220px 1fr;gap:45px;align-items:center;margin:20px 0 5px}.ya-feature-cover{position:relative;display:block;aspect-ratio:2/3;background:#dfd8e3;padding:10px;box-shadow:8px 8px 0 #b4a1b536;transform:rotate(-3deg)}.ya-feature-cover>img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 5px #3025342e)}.ya-feature-cover>span:not(.ya-no-cover){position:absolute;left:-15px;bottom:20px;background:#896a85;color:white;padding:8px 14px;font-size:9px;letter-spacing:.14em;transform:rotate(3deg)}.ya-no-cover{display:flex;width:100%;height:100%;align-items:center;justify-content:center;text-align:center;font-size:12px;line-height:1.9;color:#988191}.ya-favorite-layout h3{font-size:27px;line-height:1.45;margin:0 0 12px;color:#66516c;max-width:620px}.ya-feature-score{display:flex;gap:8px;align-items:baseline}.ya-feature-score>strong{font-size:68px;line-height:1.1;letter-spacing:-.06em;color:#a2688b}.ya-feature-score small{font-size:13px;color:#9c859a}.ya-text-link{font-size:12px;color:#956883!important}.ya-runner-list{margin:24px 0 0;border-top:1px solid #dcd0dd;max-width:580px}.ya-runner-list>a{display:flex;gap:15px;padding:11px 0;align-items:center;border-bottom:1px solid #ded4e0;font-size:12px}.ya-runner-list span{font-size:9px;letter-spacing:.1em;color:#a18e9d}.ya-runner-list strong{flex:1;font-weight:550}.ya-runner-list b{color:#a26a89}.ya-empty{display:flex;align-items:center;justify-content:center;gap:32px;min-height:300px;color:#9b8590}.ya-empty img{width:145px;height:220px;object-fit:contain;opacity:.85}.ya-empty h3{font-size:26px;line-height:1.5;color:#8c7387;margin:0 0 16px}.ya-empty p{font-size:12px;line-height:1.9}.ya-rhythm{background:#edf2f1}.ya-rhythm h2{color:#546b6d}.ya-rhythm-head{display:flex;align-items:center;justify-content:space-between;margin:34px 0 15px;gap:20px;font-size:12px;color:#889c97}.ya-rhythm-head b{display:inline-block;font-size:30px;color:#698d88;margin-right:12px}.ya-rhythm-head small{font-size:10px}.ya-month-chart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;height:245px}.ya-month{display:flex;flex-direction:column;align-items:center;gap:12px;color:#8fa09b;font-size:12px}.ya-month>b{font-size:12px;font-weight:500}.ya-month small{font-size:10px;white-space:nowrap}.ya-bar-track{position:relative;width:100%;height:100%;max-width:36px;background:#dee6e2;border-radius:3px;overflow:hidden}.ya-bar-track>i{position:absolute;bottom:0;left:0;right:0;height:var(--year-bar);background:#a7c2b7;border-radius:3px;transform-origin:bottom}.ya-month.is-peak{color:#608e82}.ya-month.is-peak i{background:#729d91}.ya-month.is-peak>b{font-weight:700}.ya-chart-note{font-size:10px;color:#92a59d;margin:25px 0 0;line-height:1.8}.ya-scores{background:linear-gradient(140deg,#f9f0df,#f8f4eb)}.ya-score-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:60px;align-items:center;margin-top:30px}.ya-score-ring{position:relative;display:flex;align-items:center;justify-content:center;width:260px;aspect-ratio:1;border:1px solid #d9c6a5;border-radius:50%;margin:auto;box-shadow:0 0 0 12px #fbf7ef,0 0 0 13px #e5d6bd}.ya-score-ring:before{content:'';position:absolute;inset:15px;border:1px dashed #d8c3a0;border-radius:50%}.ya-score-ring>div{display:grid;text-align:center;gap:14px}.ya-score-ring small{font-size:12px;color:#ad916b}.ya-score-ring strong{font-size:69px;line-height:1;color:#a48659;letter-spacing:-.05em}.ya-score-ring span{font-size:10px;color:#b19b7d}.ya-score-ring>i{position:absolute;right:-4px;top:23px;font-size:38px;color:#bfa16b;font-style:normal}.ya-score-bars{display:grid;gap:11px}.ya-score-bars>div{display:flex;gap:12px;align-items:center;color:#af9473}.ya-score-bars b{width:42px;font-size:14px;font-weight:500;text-align:right}.ya-score-bars b>small{font-size:9px}.ya-score-bars>div>span{position:relative;flex:1;height:10px;background:#ebdfca;border-radius:2px;overflow:hidden}.ya-score-bars i{display:block;width:var(--year-bar);height:100%;background:#ba9e71;transform-origin:left}.ya-score-bars em{font-size:10px;font-style:normal;min-width:32px}.ya-words{background:#f5edf0}.ya-review-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px}.ya-review-cards>article{padding:25px 22px;background:#fffaf7;border:1px solid #e5d3d9;box-shadow:4px 5px 0 #d9bcc626;min-width:0;transform:rotate(-1deg);display:flex;flex-direction:column;min-height:290px}.ya-review-cards>article:nth-child(2){transform:rotate(1deg)}.ya-review-cards>article:nth-child(3){transform:rotate(-.6deg)}.ya-review-cards .ya-empty{grid-column:1/-1}.ya-postcard-mark{font-size:8px;letter-spacing:.13em;color:#b598a4}.ya-review-cards h3{font-size:16px;line-height:1.6;margin:18px 0 15px;color:#8c647d}.ya-review-excerpt{font-size:12px;line-height:1.9;color:#99818d;overflow-wrap:anywhere;flex:1}.ya-review-excerpt img{height:36px;max-width:50px;object-fit:contain;vertical-align:middle}.ya-review-cards footer{border-top:1px solid #eadce1;padding-top:14px;margin-top:20px;font-size:9px;display:grid;gap:9px;color:#af959e}.ya-review-cards footer a{overflow-wrap:anywhere}.ya-ending{text-align:center;background:radial-gradient(ellipse at 50% 0%,#eee2ec,transparent 70%),#faf5eb}.ya-ending h2{font-size:46px}.ya-ending>.ya-copy{margin:0 auto 27px}.ya-final-card{position:relative;display:flex;align-items:center;gap:25px;background:#fffcf5;border:1px solid #e2cfd5;box-shadow:6px 7px 0 #d1b8c42b;text-align:left;padding:28px 30px;max-width:670px;margin:0 auto 30px;transform:rotate(-1deg)}.ya-final-card>img{width:105px;height:150px;object-fit:contain}.ya-final-card small{font-size:8px;letter-spacing:.16em;color:#b0969c}.ya-final-card h3{font-size:23px;line-height:1.5;color:#87677d;margin:13px 0}.ya-final-card p{font-size:12px;color:#a68795}.ya-final-card p b{font-size:18px;font-weight:600}.ya-final-card p span{margin:0 8px}.ya-final-card div>span{display:block;font-size:9px;letter-spacing:.06em;color:#baa0ab}.ya-ending-actions{display:flex;align-items:center;justify-content:center;gap:30px}.ya-data-note{max-width:760px;margin:25px auto 0;text-align:left;font-size:10px;line-height:1.9;color:#ac909e}.ya-data-note summary{cursor:pointer;text-align:center}.ya-data-note p{margin:8px 0}.ya-data-note code{font-size:10px}.ya-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:21px;font-size:12px;color:#9c7c8e}.ya-page-dots{display:flex;gap:13px}.ya-page-dots>a{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid #e5d9df;color:#b196a5;font-size:9px;transition:background .2s,color .2s,transform .2s}.ya-page-dots>a[aria-current]{background:#96738d;color:white;border-color:#96738d;transform:scale(1.12)}.ya-navigation>a[aria-disabled=true]{visibility:hidden}.ya-page-hint{display:flex;justify-content:space-between;gap:16px;margin-top:16px;font-size:9px;color:#b49cab}.ya-report button:focus-visible,.ya-report a:focus-visible{outline:2px solid #ab6686;outline-offset:4px}.ya-stage.is-reversing .ya-chapter{--ya-enter-x:-30px}
@media(prefers-reduced-motion:no-preference){.ya-entry>b{animation:ya-year-glow 6s ease-in-out infinite}.ya-enhanced:not(.ya-no-motion) .ya-chapter.is-active{animation:ya-page-enter .55s cubic-bezier(.2,.75,.25,1) both}.ya-enhanced:not(.ya-no-motion) .is-active h1,.ya-enhanced:not(.ya-no-motion) .is-active h2,.ya-enhanced:not(.ya-no-motion) .is-active .ya-copy{animation:ya-line-enter .65s .1s both}.ya-enhanced:not(.ya-no-motion) .is-active .ya-metrics article,.ya-enhanced:not(.ya-no-motion) .is-active .ya-review-cards article{animation:ya-line-enter .7s var(--year-delay,.15s) both}.ya-enhanced:not(.ya-no-motion) .is-active .ya-metrics article:nth-child(2){animation-delay:.2s}.ya-enhanced:not(.ya-no-motion) .is-active .ya-metrics article:nth-child(3){animation-delay:.28s}.ya-enhanced:not(.ya-no-motion) .is-active .ya-metrics article:nth-child(4){animation-delay:.36s}.ya-enhanced:not(.ya-no-motion) .is-active .ya-bar-track>i{animation:ya-bar-grow .85s var(--year-delay,0s) both}.ya-enhanced:not(.ya-no-motion) .is-active .ya-score-bars i{animation:ya-score-grow .85s var(--year-delay,0s) both}.ya-enhanced:not(.ya-no-motion) .ya-film-art img{animation:ya-film-drift 18s ease-in-out infinite alternate}.ya-enhanced:not(.ya-no-motion) .ya-ambient i{animation:ya-spark-drift var(--duration) var(--delay) ease-in-out infinite alternate}.ya-enhanced:not(.ya-no-motion) .ya-ticket{animation:ya-ticket-float 6s ease-in-out infinite}.ya-enhanced:not(.ya-no-motion) .ya-feature-cover{transition:transform .2s;transform:perspective(800px) rotateY(var(--ya-parallax,0deg)) rotate(-3deg)}.ya-enhanced:not(.ya-no-motion) .is-active .ya-score-ring>i{animation:ya-star-turn 18s linear infinite}@keyframes ya-page-enter{from{opacity:0;transform:translateX(var(--ya-enter-x,30px)) scale(.985)}to{opacity:1;transform:none}}@keyframes ya-line-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes ya-bar-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes ya-score-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ya-film-drift{to{transform:scale(1.11) translateX(-1%)}}@keyframes ya-spark-drift{from{opacity:.2;translate:0 8px}to{opacity:.65;translate:7px -12px}}@keyframes ya-ticket-float{50%{translate:0 -7px;rotate:-2deg}}@keyframes ya-star-turn{to{rotate:360deg}}@keyframes ya-year-glow{50%{opacity:.55}}}
@media(max-width:850px){.ya-chapter{padding:35px;min-height:650px}.ya-intro-copy{width:68%}.ya-film-art{left:25%}.ya-film-caption{left:35px}.ya-year{font-size:65px}.ya-ticket{right:20px;bottom:60px;padding:14px}.ya-ticket strong{font-size:50px}.ya-footprint-layout{gap:25px}.ya-big-number>strong{font-size:130px}.ya-big-number i{font-size:45px}.ya-metrics article{padding:16px}.ya-favorite-layout{grid-template-columns:180px 1fr;gap:30px}.ya-score-layout{gap:40px;grid-template-columns:.85fr 1fr}.ya-score-ring{width:210px}.ya-review-cards{grid-template-columns:1fr 1fr}.ya-review-cards article:last-child:nth-child(3){display:none}.ya-month-chart{gap:10px}.ya-favorites h2{font-size:33px}}
@media(max-width:600px){.ya-entry{padding:22px;gap:14px}.ya-entry strong{font-size:20px}.ya-entry div>span{font-size:11px}.ya-entry>b{position:absolute;right:38px;bottom:5px;font-size:70px;color:#ba929420}.ya-entry-arrow{font-size:22px}.ya-admin-form{grid-template-columns:1fr;gap:16px}.annual-analysis-page .main{padding:14px 12px 30px}.ya-toolbar{font-size:10px;gap:8px}.ya-toolbar button{padding:7px 10px;font-size:10px}.ya-chapter{padding:28px 23px;min-height:655px}.ya-chapter h1,.ya-chapter h2{font-size:35px}.ya-kicker{font-size:8px;letter-spacing:.15em;margin-bottom:15px}.ya-copy{font-size:11px;line-height:1.9;margin-bottom:20px}.ya-intro{align-items:flex-start;padding-top:35px}.ya-intro-copy{width:100%}.ya-intro-copy h1{font-size:36px;max-width:330px}.ya-film-art{inset:31% 0 0 0}.ya-film-art img{object-position:66% 60%}.ya-film-art:after{background:linear-gradient(180deg,#fbf4e6 0%,#fbf4e6ad 18%,#fbf4e618 45%),linear-gradient(90deg,#fbf4e699,transparent 90%)}.ya-intro>.ya-intro-copy>.ya-copy{max-width:230px}.ya-year{font-size:60px;margin-bottom:24px}.ya-primary{font-size:11px;padding:13px 17px;gap:20px}.ya-member{margin:18px 0 22px}.ya-film-caption{left:23px;font-size:8px;bottom:14px}.ya-ticket{right:20px;bottom:48px;padding:12px 17px}.ya-ticket strong{font-size:47px}.ya-ticket>span{font-size:7px}.ya-ticket small{font-size:8px}.ya-footprint-layout{grid-template-columns:1fr;gap:24px;margin:27px 0 20px}.ya-big-number{gap:22px}.ya-big-number>strong{font-size:118px}.ya-big-number>span{font-size:11px}.ya-big-number i{right:15%;top:2px;font-size:43px}.ya-metrics article{padding:16px 18px;gap:7px}.ya-metrics strong{font-size:29px}.ya-metrics small{font-size:10px}.ya-note-strip{font-size:9px;gap:9px;padding-top:16px}.ya-favorites h2{font-size:32px}.ya-favorite-layout{grid-template-columns:120px minmax(0,1fr);gap:25px;margin:30px 0 0;align-items:start}.ya-feature-cover{padding:7px;margin-top:10px}.ya-feature-cover>span:not(.ya-no-cover){font-size:7px;left:-8px;padding:7px 9px;bottom:12px}.ya-favorite-layout h3{font-size:19px;line-height:1.5}.ya-favorite-layout .ya-kicker{font-size:7px;letter-spacing:.1em}.ya-feature-score>strong{font-size:50px}.ya-feature-score small{font-size:11px}.ya-favorite-layout .ya-copy{font-size:10px;margin-bottom:12px}.ya-runner-list{margin-top:20px}.ya-runner-list>a{font-size:10px;gap:10px;padding:11px 0}.ya-runner-list span{font-size:8px}.ya-empty{gap:20px;min-height:310px}.ya-empty img{width:95px;height:150px}.ya-empty h3{font-size:20px}.ya-empty p{font-size:11px}.ya-rhythm-head{align-items:start;margin-top:40px;gap:10px;flex-direction:column}.ya-rhythm-head b{font-size:28px}.ya-month-chart{gap:5px;height:215px;margin-top:30px}.ya-month{font-size:10px;gap:12px}.ya-month>b{font-size:10px}.ya-month small{font-size:8px}.ya-bar-track{max-width:20px}.ya-chart-note{font-size:9px;line-height:1.9}.ya-score-layout{grid-template-columns:1fr;gap:28px;margin-top:18px}.ya-score-ring{width:170px}.ya-score-ring strong{font-size:45px}.ya-score-ring small{font-size:10px}.ya-score-ring>div{gap:9px}.ya-score-ring>i{font-size:28px;top:5px}.ya-score-bars{gap:8px;margin:0 5px}.ya-score-bars b{font-size:11px;width:35px}.ya-score-bars b>small{font-size:8px}.ya-score-bars>div>span{height:8px}.ya-score-bars em{font-size:9px}.ya-review-cards{grid-template-columns:1fr;gap:15px;margin-top:24px}.ya-review-cards>article{padding:18px;min-height:185px}.ya-review-cards h3{font-size:14px;margin:13px 0 10px}.ya-review-excerpt{font-size:11px;line-height:1.7}.ya-review-cards article:nth-child(n+2){display:none}.ya-review-cards footer{font-size:9px;margin-top:15px;gap:7px}.ya-ending h2{font-size:35px;margin-top:35px}.ya-ending>.ya-copy{font-size:11px;max-width:270px}.ya-final-card{padding:24px 19px;gap:16px;margin:30px 0}.ya-final-card>img{width:68px;height:110px}.ya-final-card h3{font-size:17px;margin:12px 0}.ya-final-card p{font-size:10px;line-height:1.8}.ya-final-card p b{font-size:15px}.ya-final-card p span{margin:0 4px}.ya-final-card div>span{font-size:8px;line-height:1.8}.ya-final-card small{font-size:7px;letter-spacing:.1em}.ya-ending-actions{gap:22px}.ya-data-note{font-size:9px;margin-top:24px}.ya-navigation{font-size:10px;gap:10px;margin-top:18px}.ya-page-dots{gap:5px}.ya-page-dots>a{width:24px;height:24px;font-size:8px}.ya-page-hint{font-size:8px}.ya-page-dots span{font-size:8px}.ya-text-link{font-size:10px}}
.ya-review-cards:has(>article:only-child){grid-template-columns:minmax(0,640px);justify-content:center}
@media(max-width:850px){.ya-review-cards article:last-child:nth-child(3){display:flex}}
@media(max-width:600px){.ya-review-cards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 5px 14px;margin-inline:-5px}.ya-review-cards>article,.ya-review-cards>article:nth-child(n+2){display:flex;flex:0 0 88%;scroll-snap-align:start;min-height:280px;transform:none}.ya-review-cards>.ya-empty{flex:1;min-width:100%}.ya-toolbar button:disabled{cursor:default;opacity:.7}}
@media(max-width:600px){.ya-review-cards>article:only-child{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.ya-report *,.ya-entry{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.ya-no-motion *{animation:none!important;transition:none!important}

.ya-report{scroll-margin-top:90px}@media(max-width:600px){.ya-report{scroll-margin-top:75px}}

.pl-page{max-width:940px;margin:35px auto 80px;color:#594654}.pl-page>header{padding:38px 0 32px}.pl-eyebrow{font-size:10px!important;letter-spacing:.18em;color:#af6589;margin:0 0 12px!important}.pl-page h1{font-size:clamp(28px,4vw,42px);margin:0 0 16px}.pl-page>header>p:not(.pl-eyebrow){font-size:17px;color:#83747d}.pl-page small{color:#988893;font-size:11px}.pl-nav{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #e9dee5;padding:0 0 18px}.pl-nav a{font-size:13px;padding:10px 15px;border-radius:8px;background:#f7f1f5;color:#836376;text-decoration:none}.pl-nav a[aria-current]{background:#ab4b79;color:#fff}.pl-sections section{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:28px 0;border-bottom:1px solid #ede5eb}.pl-sections section>span{font-size:12px;letter-spacing:.12em;color:#be96ab;padding-top:5px}.pl-sections h2{font-size:19px;margin:0 0 12px}.pl-sections p{font-size:15px;line-height:1.95;color:#786c75;margin:0}.pl-contact{padding:22px 26px;background:#f7f1f5;margin-top:28px;line-height:1.8;font-size:13px;border-left:3px solid #be7c9d}.pl-contact a{display:block;color:#ad4c79;margin-top:9px}.pl-notice{border:1px solid #eadce5;border-radius:18px;width:min(650px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;color:#594654;background:#fffcfe;box-shadow:0 24px 100px #44253630}.pl-notice[open]{display:flex;flex-direction:column;animation:pl-enter .25s ease-out}.pl-notice::backdrop{background:rgba(50,35,48,.45);backdrop-filter:blur(4px)}.pl-notice header{display:flex;align-items:center;gap:15px;padding:25px 28px 20px;border-bottom:1px solid #eee1e9;flex-shrink:0}.pl-notice header img{border-radius:50%}.pl-notice h2{font-size:21px;margin:0}.pl-notice header>button{margin-left:auto;border:0;border-radius:50%;width:32px;height:32px;background:#f3e7ef;color:#98667f;font-size:21px;flex-shrink:0}.pl-notice-body{overflow:auto;padding:22px 28px;font-size:14px;line-height:1.85;overscroll-behavior:contain}.pl-notice-body>p{margin-top:0;color:#93808b}.pl-notice-body section{padding:14px 17px;background:#f9f2f6;border-radius:10px;margin:12px 0}.pl-notice-body h3{font-size:15px;margin:0 0 7px}.pl-notice-body section p{margin:0;color:#82707c}.pl-notice-body nav{display:flex;gap:14px;flex-wrap:wrap;padding-top:12px;font-size:12px}.pl-notice a{color:#b24c7c}.pl-notice footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;padding:18px 28px 22px;border-top:1px solid #eee1e9;flex-shrink:0}.pl-notice footer .btn{font-size:13px}.pl-notice footer small{font-size:11px;line-height:1.6;color:#a08896;flex-basis:100%;text-align:right}.pl-consent{display:flex!important;align-items:flex-start;gap:9px;font-size:11px;line-height:1.7;color:#8e7483}.pl-consent input{margin-top:3px;accent-color:#b94e7f;flex-shrink:0}.pl-consent a,.pl-consent button{color:#b34a79}.pl-consent button{display:block;border:0;background:transparent;padding:3px 0;cursor:pointer;font-size:11px;text-decoration:underline}@keyframes pl-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.pl-page{margin-top:12px}.pl-page>header{padding-top:22px}.pl-nav a{padding:9px 11px;font-size:11px}.pl-sections section{grid-template-columns:28px 1fr;gap:9px}.pl-notice header,.pl-notice footer{padding:17px}.pl-notice-body{padding:16px}.pl-notice header img{width:36px;height:36px}.pl-notice h2{font-size:17px}.pl-notice .pl-eyebrow{font-size:8px!important}.pl-notice footer .btn{flex:1}.pl-notice footer small{text-align:center}}@media(prefers-reduced-motion:reduce){.pl-notice[open]{animation:none}}

/* Theme controls and shared night palette. Artwork is never recolored. */
:root { color-scheme: light; }
.theme-picker { position: relative; flex: none; }
.theme-picker summary { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; list-style: none; border: 1px solid transparent; border-radius: 50%; color: var(--text); cursor: pointer; }
.theme-picker summary::-webkit-details-marker { display: none; }
.theme-picker summary:hover,.theme-picker[open] summary { background: var(--surface-2); border-color: var(--border); color: var(--brand); }
.theme-picker summary:focus-visible,.theme-menu button:focus-visible { outline: 2px solid var(--brand); outline-offset: 3px; }
.theme-sun { display: none; }
:root[data-theme="dark"] .theme-moon { display: none; }
:root[data-theme="dark"] .theme-sun { display: block; }
.theme-menu { position: absolute; top: calc(100% + 12px); right: -8px; z-index: 60; width: 230px; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); color: var(--text); box-shadow: var(--shadow); }
.theme-menu>p { margin: 2px 8px 9px; font-size: 11px; color: var(--text-dim); letter-spacing: .08em; }
.theme-menu button { position: relative; display: grid; width: 100%; gap: 2px; padding: 10px 34px 10px 12px; border: 1px solid transparent; border-radius: 7px; text-align: left; background: transparent; color: var(--text); font: inherit; font-size: 13px; cursor: pointer; }
.theme-menu button small { font-size: 11px; color: var(--text-dim); }
.theme-menu button i { display: none; position: absolute; right: 12px; top: 14px; font-style: normal; color: var(--brand); }
.theme-menu button[aria-pressed="true"] { border-color: var(--border); background: var(--surface-2); }
.theme-menu button[aria-pressed="true"] i { display: block; }
.theme-menu button:hover { background: var(--surface-2); }
.theme-feedback { margin: 8px; font-size: 11px; line-height: 1.7; color: var(--text-dim); }
.theme-feedback:empty { display: none; }
@media(max-width:600px) { .nav-right { gap: 4px; } .theme-picker summary { width: 30px; height: 32px; } .theme-menu { right: -70px; } }
@media(prefers-reduced-motion:no-preference) { .theme-changing body,.theme-changing .topbar,.theme-changing .footer,.theme-changing .panel,.theme-changing .theme-menu { transition: background-color .18s ease,color .18s ease,border-color .18s ease; } }

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #19151e;
  --bg-soft: #211c27;
  --surface: #26202d;
  --surface-2: #302737;
  --border: #493b50;
  --text: #f1e8f0;
  --text-dim: #c0adbd;
  --brand: #efa4c4;
  --brand-2: #a5c8f2;
  --ok: #9ed6b4;
  --warn: #e8c189;
  --err: #f2a2b0;
  --dt-ink: var(--text);
  --dt-muted: var(--text-dim);
  --dt-line: var(--border);
  --muted: var(--text-dim);
  --accent: var(--brand);
  --rose: var(--brand);
  --cream: var(--surface);
  --action: #b34c76;
  --action-hover: #a9446e;
  --shadow: 0 16px 45px #0005;
}
:root[data-theme="dark"] body { background: var(--bg); color: var(--text); }
:root[data-theme="dark"] body :is(.topbar,.nav,.poster-dialog-top,.reader-toolbar,.wd-section-nav) { background: #211c27f5; border-color: var(--border); color: var(--text); }
:root[data-theme="dark"] body .footer { background: var(--bg-soft)!important; color: var(--text-dim); border-color: var(--border); }
:root[data-theme="dark"] body :is(.footer-brand>a,.footer-links strong,.footer-note>strong,.brand-name,.nav-search) { color: var(--text); }
:root[data-theme="dark"] body :is(.nav-link,.nav-uid,.footer-brand>span,.footer-brand>p,.footer-links a,.footer-note,.footer-bottom) { color: var(--text-dim); }
:root[data-theme="dark"] body :is(.nav-link.is-active,.nav-link:hover,.footer-note a,.footer-bottom a) { color: var(--brand); }
:root[data-theme="dark"] body .menu-toggle span { background: var(--text); }

/* Restore readable typography on the editorial pages' fixed light colors. */
:root[data-theme="dark"] body main :is(h1,h2,h3,h4,label,summary,th,dd,dt) { color: var(--text); }
:root[data-theme="dark"] body main :is(h1,h2,h3,h4) a { color: inherit; }
:root[data-theme="dark"] body main :is(p,li,td,small,time,figcaption) { color: var(--text-dim); }
:root[data-theme="dark"] body :is(.wd-introduction,.wd-intro-preview,.review-body,.mr-bio-dialog p,.mr-bio-dialog small,.av-dialog p,.av-dialog small,.cw-user,.dt-home-art-note>span,.mb-demo-entry p) { color: var(--text-dim); }
:root[data-theme="dark"] body main :is(h1,h2)>span { color: var(--brand); }
:root[data-theme="dark"] body :is(.eyebrow,.dt-label,.mr-eyebrow,.pl-eyebrow,.mb-label,.au-eyebrow,.text-link,.wd-links a,.fd-back,.reader-back,.ac-forgot,.ac-security-badge,.mr-edit-bio,.mr-profile-actions a,.cl-search-heading>a,.rk-list>header>a,.wd-cover-zoom,.copy-feedback,.mr-copy-feedback,.voice-score,.cw-open-work,.cw-review-more summary,.ya-text-link) { color: var(--brand); }
:root[data-theme="dark"] body :is(.hero-foot,.hero-bottom,.replay-button,.card-sub,.card-meta,.playing-note,.dt-stat-line,.dt-review-meta,.dt-playing-note,.dt-art-note small,.dt-hero-footer,.dt-editor-pick>span,.dt-content-no,.dt-content-text>span,.dt-content-page,.reader-page-status,.book-caption,.records-foot,.festival-date,.festival-bottom,.stage-label,.art-credit,.mr-member-meta,.mr-result-note,.mr-stats span,.mr-work-bottom,.mr-unrated,.mr-form-help,.mr-save-time,.cw-event,.wd-community-score>div>span,.wd-current-status,.wd-sync-note,.wd-section-title>span,.cl-mode>span,.cl-shelf-heading>div>span,.cl-search-mode,.rk-number,.rk-row-count,.rk-note,.rk-no-rest,.rk-page-range,.rk-podium-top>span,.rk-podium-top>strong,.rk-podium-score>span,.av-options small,.fr-heading>span,.fr-footer [data-review-count],.ac-email-feedback,.ac-reset-note,.au-footnote,.mb-vote-disabled,.mb-pagination,.mb-admin-preview,.sa-heading p,.sa-audit small,.fd-steps span,.fd-contacts span,.fd-toc nav a,.fd-toc>div>span,.ya-month,.ya-note-strip,.ya-navigation,.ya-page-hint) { color: var(--text-dim); }
:root[data-theme="dark"] body :is(.dt-stat-line b,.dt-review-meta>a,.wd-counts b,.cl-search-heading h2,.cl-shelf .card-title,.rk-row-title h3,.rk-podium h2,.mr-stats a,.mr-work h3 a,.cw-member,.cw-my-record strong,.cw-work-title h2 a,.fr-heading h3,.ac-security summary strong,.av-dialog,.mr-bio-dialog,.pl-page,.pl-notice,.au-form-wrap h1) { color: var(--text); }
:root[data-theme="dark"] body :is(.dt-review-meta b,.dt-rank-line>b,.home-rank-row>strong,.wd-community-score strong,.mr-work-tags strong,.cw-work-title>b,.rk-row-score,.rk-podium-score>b,.rk-podium-top b,.cl-shelf .card-meta [data-work-brand],.fd-dates strong,.fd-end strong,.fd-contacts strong,.fd-contacts a) { color: var(--brand); }

/* Neutral cards, forms, reading surfaces and dialogs. */
:root[data-theme="dark"] body :is(.panel,.voice-card,.home-search,.dt-search,.dt-floating-note,.dt-highlights,.reading-card,.reader-toolbar,.submission-guide,.dt-gallery-item,.dt-gallery-item>span,.community-gallery-grid button,.mr-work,.cw-sidebar>section,.wd-record,.wd-review-editor,.wd-score-details[open] .bars,.wd-cast-grid .cast,.mr-bio-dialog,.av-dialog,.av-options label>span,.fr-composer,.fr-preview,.fr-sticker-picker button,.au-shell,.ac-security,.fd-types details,.fd-spec-table,.pl-notice,.pl-notice-body section,.site-edit-dialog,.mb-match,.mb-cheer,.mb-mini-match,.mb-composer,.mb-stickers button,.mb-admin-roster details,.ya-review-cards>article,.ya-final-card) { background: var(--surface); border-color: var(--border); }
:root[data-theme="dark"] body :is(.input,textarea,select,.cl-search .input,.au-form .input,.fr-composer textarea,.mr-review-fields .input,.mr-records-heading select) { background: #201a26; color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] body input::placeholder,:root[data-theme="dark"] body textarea::placeholder { color: #ac97a7; opacity: 1; }
:root[data-theme="dark"] body .wd-page { --wd-ink: var(--text); --wd-muted: var(--text-dim); --wd-line: var(--border); --wd-accent: var(--brand); }
:root[data-theme="dark"] body :is(.input,textarea,select):focus { outline-color: var(--brand); border-color: var(--brand); }
:root[data-theme="dark"] body .home-search input { color: var(--text); }
:root[data-theme="dark"] body :is(.btn,.btn-light,.stamp-button,.ac-send-code,.mr-edit-bio,.wd-cover-zoom,.format-tabs button,.reading-filters button,.reader-toolbar button,.ya-toolbar button,.sa-assets button) { background: var(--surface-2); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] body :is(.btn-primary,.nav-right .btn-primary,.au-submit,.home-search button,.dt-search button,.star.on,.star.hover,.btn-status.is-on,.tab.is-active,.format-tabs button[aria-selected=true],.reading-filters button[aria-pressed=true],.mr-pagination [aria-current],.pl-nav a[aria-current]) { background: var(--action); border-color: var(--action); color: #fff; }
:root[data-theme="dark"] body :is(.btn-primary,.au-submit):hover { background: var(--action-hover); color: #fff; }
:root[data-theme="dark"] body :is(.btn-ghost,.btn-danger) { background: transparent; }
:root[data-theme="dark"] body .btn-danger { color: var(--err); }
:root[data-theme="dark"] body :is(.tag,.mr-role,.badge-admin,.card-score,.cl-shelf .card-score,.av-options i) { color: #fff; }
:root[data-theme="dark"] body :is(.wd-record .star,.fr-toolbar,.fr-heading,.fr-sticker-picker,.mr-record-form .mr-review-fields,.mr-review-jump,.wd-badges>span,.wd-section-nav span,.mr-filters a[aria-current],.cl-search-mode,.cl-discover-note,.cl-guest-notice,.cl-discover-note .btn,.rk-toolbar nav,.rk-page-range a,.ac-strength-bars i,.fd-callout,.fd-subject,.fd-toc,.fd-spec-table th,.fd-dates>div,.fd-heading-tags span,.pl-contact,.pl-nav a,.mr-empty,.cw-my-record,.av-preview,.av-options img,.mb-draft-note,.mb-quiet,.mb-roster-empty,.mb-rules,.mb-stickers,.mb-admin-save,.mb-demo-banner,.mb-demo-entry,.mb-image-upload,.ya-ticket) { background: var(--surface-2); border-color: var(--border); }
:root[data-theme="dark"] body :is(.fr-toolbar button,.fr-composer form>label,.fr-sticker-picker button,.fr-preview,.mr-review-jump,.wd-badges>span,.mr-filters a,.cl-mode>a,.rk-toolbar a,.rk-page-range a,.fd-types summary,.fd-subject code,.fd-toc nav a,.pl-nav a,.mb-mini-match,.mb-admin-fields label,.mb-admin-roster label,.mb-admin-rounds label) { color: var(--text-dim); }
:root[data-theme="dark"] body :is(.fr-toolbar button:hover,.fr-toolbar button[aria-pressed=true],.fr-toolbar button[aria-expanded=true],.fr-sticker-picker button:hover,.mr-filters a:hover,.mr-review-jump:hover,.av-options input:checked+span,.mb-mini-match .is-winner) { background: #403044; border-color: #947088; color: var(--brand); }
:root[data-theme="dark"] body .mr-review-jump { color: var(--brand); }
:root[data-theme="dark"] body :is(.fr-feedback,.fr-footer [data-review-count].is-full,.au-form-feedback) { color: var(--err); }
:root[data-theme="dark"] body .mr-status { background: var(--surface-2); color: var(--text-dim); }
:root[data-theme="dark"] body .mr-status.doing { background: #27364a; color: #b8d5f6; }
:root[data-theme="dark"] body .mr-status.done { background: #283d34; color: #b2dbbc; }
:root[data-theme="dark"] body .mr-status.wish { background: #472b3e; color: #f1b0ce; }
:root[data-theme="dark"] body .mr-status.dropped { background: #363036; color: #d4bec5; }
:root[data-theme="dark"] body .wd-record .star:is(.on,.hover) { background: var(--action); color: #fff; border-color: var(--action); }
:root[data-theme="dark"] body .ac-strength[data-level="1"] i:first-child { background: #f2a2b0; }
:root[data-theme="dark"] body .ac-strength[data-level="2"] i:nth-child(-n+2) { background: #e8c189; }
:root[data-theme="dark"] body .ac-strength[data-level="3"] i:nth-child(-n+3) { background: #c6b3e0; }
:root[data-theme="dark"] body .ac-strength[data-level="4"] i { background: #9ed6b4; }
:root[data-theme="dark"] body :is(.s10,.s9) { color: #f3accb; }
:root[data-theme="dark"] body .s8 { color: #efbb97; }
:root[data-theme="dark"] body .s7 { color: #dfc98e; }
:root[data-theme="dark"] body .s6 { color: #b5d6a1; }
:root[data-theme="dark"] body .s5 { color: #99d3cd; }
:root[data-theme="dark"] body .s4 { color: #a9ccf4; }

/* Borders retain hierarchy without bright hairlines across the night canvas. */
:root[data-theme="dark"] body :is(.footer-bottom,.game-card,.voice-work,.dt-rank-line,.dt-recent,.dt-editor-pick,.dt-journal-heading,.dt-contents,.dt-content-row,.mr-stats,.mr-stats a,.mr-filters,.mr-pagination a,.mr-bio-dialog footer,.av-dialog footer,.cw-heading,.cw-entry,.cw-member,.wd-side-section .release,.wd-community-score,.wd-section-title,.fr-heading,.fr-toolbar,.fr-composer textarea,.fr-preview,.fr-sticker-picker,.ac-security-body,.fd-heading,.fd-section,.fd-steps li,.fd-spec-table th,.fd-spec-table td,.fd-contacts>div,.fd-faq details,.fd-toc nav a,.pl-nav,.pl-sections section,.pl-notice header,.pl-notice footer,.sa-assets article,.sa-fields form,.sa-audit p,.mb-overview,.mb-overview>div,.mb-section-nav,.mb-round-tabs,.mb-round-tabs a,.mb-match>header,.mb-mini-match>span+span,.mb-admin-rounds>div,.mb-settle-form>div,.rk-list>header,.rk-row,.rk-podium-top,.rk-podium-foot,.cl-mode,.ya-chapter,.ya-metrics,.ya-metrics article,.ya-note-strip,.ya-runner-list,.ya-runner-list>a,.ya-review-cards footer) { border-color: var(--border); }
:root[data-theme="dark"] body :is(.mr-work:hover,.game-card:hover,.av-options input:checked+span) { border-color: #947088; }
:root[data-theme="dark"] body :is(.mr-stats a.is-on,.wd-record,.fr-composer,.mr-profile-hero,.cl-heading,.rk-heading,.mb-visibility-control) { border-top-color: #b57295; }
:root[data-theme="dark"] body .mr-stats a.is-on { border-bottom-color: var(--brand); }
:root[data-theme="dark"] body .avatar { background: var(--surface-2)!important; }
:root[data-theme="dark"] body :is(.member-avatar,.av-profile-image>img,.av-preview img,.fr-heading>img,.au-avatar) { background: var(--surface-2); border-color: var(--border); }
:root[data-theme="dark"] body :is(.poster-dialog,.mascot-message) { background: var(--surface); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] body :is(.mascot-toggle,.poster-dialog-top button,.mascot-close,.mr-bio-dialog header button,.av-dialog header button,.pl-notice header>button) { background: var(--surface-2); color: var(--brand); border-color: var(--border); }
:root[data-theme="dark"] body :is(.mascot-message>p,.mascot-message>a,.site-edit-dialog p) { color: var(--text-dim); }
:root[data-theme="dark"] body dialog::backdrop { background: #0d0915b8; }

/* The public pages retain their individual warm, rose and blue accents. */
:root[data-theme="dark"] body :is(.festival-page,.festival-details-page,.journal-page,.reader-page,.member-auth-page,.catalog-page) { background: var(--bg); }
:root[data-theme="dark"] body :is(.dt-home-hero,.hero-art,.battle-placeholder) { background: linear-gradient(115deg,#211b28,#302034); }
:root[data-theme="dark"] body .dt-home-orbit { background: radial-gradient(ellipse,#38283e,#241b2b); border-color: #755263; box-shadow: inset 0 0 0 32px #57334c55; }
:root[data-theme="dark"] body :is(.dt-home-copy h1>span,.coming-pill,.edition-pill,.stage-ticket,.hero-art-caption) { background: var(--surface); color: var(--brand); border-color: var(--border); }
:root[data-theme="dark"] body :is(.dt-home-ghost,.mr-hero-word,.format-number,.battle-symbol,.rk-heading-mark>b) { color: #71526955; }
:root[data-theme="dark"] body :is(.dt-journal-teaser,.journal-teaser,.kaeto-halo,.dt-mascot-profile,.about-mascot,.festival-timeline,.format-panel,.dt-editor-feature,.reading-feature,.battle-teaser,.mr-profile-hero,.cl-hero,.rk-heading,.ya-entry,.fd-feature-link) { background: linear-gradient(125deg,#302436,#272530); border-color: var(--border); }
:root[data-theme="dark"] body :is(.cl-hero h1 em,.rk-heading h1 em,.cl-eyebrow,.fd-feature-link) { color: var(--brand); }
:root[data-theme="dark"] body :is(.dt-content-row:hover,.rk-row:hover) { background: var(--surface); }
:root[data-theme="dark"] body :is(.dt-gallery-item>span,.dt-gallery-6 img,.dt-gallery-7 img,.dt-gallery-8 img,.reading-cover,.dt-content-thumbnail,.mr-cover,.cw-cover,.wd-cast-grid .cast-img,.wd-screenshots button,.wd-no-images,.rk-row-cover,.rk-podium-cover,.cl-shelf .cover-box,.dt-work-shelf .cover-box,.cover-box,.cover-box .cover,.rank-cover img,.cover-sm .cover,.sa-assets img) { background: var(--surface-2); }
:root[data-theme="dark"] body .wd-cover { background: linear-gradient(145deg,#312333,#292431); }
:root[data-theme="dark"] body .cl-shelf .cover-box { border-bottom-color: #654b61; box-shadow: 0 8px 0 -4px #433445,0 16px 16px -10px #0006; }
:root[data-theme="dark"] body .cl-shelf .game-card:hover .cover-box { background: #3c2d42; }
:root[data-theme="dark"] body :is(.cl-bookmark,.cl-mode>a[aria-current],.rk-toolbar a[aria-current]) { background: #554056; color: var(--text); }
:root[data-theme="dark"] body :is(.cl-hero-circle,.cl-hero-circle:after,.rk-heading-mark,.rk-heading-mark:after) { border-color: #785b71; }
:root[data-theme="dark"] body .rk-podium { background: #302432; border-color: #5b4051; }
:root[data-theme="dark"] body .rk-place-1 { background: #372a27; border-color: #79634c; }
:root[data-theme="dark"] body .rk-place-2 { background: #2c293a; border-color: #645676; }
:root[data-theme="dark"] body .rk-place-3 { background: #35262f; border-color: #745062; }
:root[data-theme="dark"] body :is(.rk-place-1 .rk-podium-top b,.rk-place-1 .rk-podium-score>b) { color: #e5c296; }
:root[data-theme="dark"] body :is(.stage-ring,.hero-orbit,.art-arrow,.book-orbit,.dt-home-orbit:after,.festival-timeline>div,.festival-timeline>small,.format-tabs button,.festival-faq details,.festival-bottom) { border-color: var(--border); }
:root[data-theme="dark"] body .festival-stage:before { background: radial-gradient(ellipse at 50% 46%,#60334d66,transparent 67%); }
:root[data-theme="dark"] body .journal-heading { background: radial-gradient(ellipse at 85% 50%,#56325b55,transparent 50%); }
:root[data-theme="dark"] body .dt-event-paper { background: #312234; }
:root[data-theme="dark"] body :is(.dt-event-status,.dt-event-actions button,.dt-event-date,.dt-feature-state>span) { color: #f0b5cf; }
:root[data-theme="dark"] body :is(.dt-feature-print,.dt-book-edition b,.dt-mascot-art>span) { color: #665064; }

/* Event and administration surfaces share the same readable controls. */
:root[data-theme="dark"] body:is(.battle-page,.battle-character-page,.battle-admin-page) { --mb-ink: var(--text); --mb-muted: var(--text-dim); --mb-pink: #e8a18f; --mb-blue: #a5c8d4; }
:root[data-theme="dark"] body :is(.mb-hero,.mb-character-hero,.mb-arena) { background: linear-gradient(115deg,#30232f,#242c37); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] body :is(.mb-hero-status,.mb-arena-state,.mb-scene-ticket,.mb-arrival,.mb-character-card,.mb-round-tabs,.mb-scene-a,.mb-scene-b,.mb-scene-track,.mb-arena-bottom) { background: var(--surface-2); border-color: var(--border); color: var(--text); }
:root[data-theme="dark"] body :is(.mb-image-empty,.mb-portrait,.mb-opponent:last-child .mb-portrait,.mb-character-card>img,.mb-character-card>.mb-image-empty) { background: var(--surface-2); color: var(--text-dim); }
:root[data-theme="dark"] body :is(.mb-match>header,.mb-vote-button,.mb-opponent:last-child .mb-vote-button,.mb-demo-banner,.mb-demo-entry) { background: var(--surface); border-color: var(--border); color: var(--text); }
:root[data-theme="dark"] body :is(.mb-round-tabs a[aria-current],.mb-composer-tools>button:not(.btn)) { background: #514057; color: var(--text); }
:root[data-theme="dark"] body .mb-bracket-scroll { background: linear-gradient(90deg,#302431,#26202d 45%,#26202d 55%,#252e38); border-color: var(--border); }
:root[data-theme="dark"] body :is(.mb-bracket-column h3,.mb-scene-ticket span,.mb-arena-event,.mb-scene-note,.mb-image-upload small,.mb-composer-tools>span) { color: var(--text-dim); }
:root[data-theme="dark"] body :is(.mb-bracket-final>p,.mb-trophy,.mb-bracket-final h3) { color: #dfbf8a; }
:root[data-theme="dark"] body .site-edit-dialog { color: var(--text); }
:root[data-theme="dark"] body .site-edit-bar button { background: #594059; color: var(--text); }
:root[data-theme="dark"] body .site-edit-bar button[aria-pressed=true] { background: #e1be7d; color: #312437; }

/* The yearbook already has a dark stage; its paper cards get a night variant. */
:root[data-theme="dark"] body :is(.jx-work,.jx-rank-1) { background: var(--surface); color: var(--text); border-color: var(--border); }
:root[data-theme="dark"] body :is(.jx-work h2,.jx-work h3,.jx-rounds dd) { color: var(--text); }
:root[data-theme="dark"] body .jx-heading h1>span { color: #19131c; }
:root[data-theme="dark"] body .jx-opening-text h2 span { color: #171219; }
:root[data-theme="dark"] body .jx-work-links { border-color: var(--border); }
:root[data-theme="dark"] body .ya-report { --ya-ink: var(--text); --ya-muted: var(--text-dim); --ya-pink: var(--brand); --ya-gold: #dfbf8a; }
:root[data-theme="dark"] body :is(.ya-stage,.ya-chapter,.ya-intro,.ya-footprints,.ya-favorites,.ya-rhythm,.ya-scores,.ya-words,.ya-ending) { background: var(--bg-soft); border-color: var(--border); }
:root[data-theme="dark"] body .ya-film-art:after { background: linear-gradient(180deg,#211c27,#211c27ad 18%,#211c2718 45%),linear-gradient(90deg,#211c2799,transparent 90%); }
:root[data-theme="dark"] body :is(.ya-year,.ya-ticket strong,.ya-feature-score>strong,.ya-big-number>strong,.ya-score-ring strong,.ya-metrics strong,.ya-runner-list b) { color: var(--brand); }
:root[data-theme="dark"] body :is(.ya-ticket>span,.ya-member small,.ya-film-caption,.ya-metrics small,.ya-metrics span,.ya-runner-list span,.ya-rhythm-head,.ya-score-ring small,.ya-score-ring span,.ya-score-bars>div,.ya-page-dots>a) { color: var(--text-dim); }
:root[data-theme="dark"] body .ya-score-ring { border-color: #79654f; box-shadow: 0 0 0 12px var(--bg-soft),0 0 0 13px #79654f; }
:root[data-theme="dark"] body :is(.ya-bar-track,.ya-score-bars>div>span) { background: var(--surface-2); }
:root[data-theme="dark"] body .ya-month.is-peak { color: #b2dbbc; }
:root[data-theme="dark"] body .ya-page-dots>a[aria-current] { background: var(--action); color: #fff; }
@media(forced-colors:active) { .theme-menu button[aria-pressed="true"] { border-color: Highlight; } }
