/* app.core.css — build-css.mjs 가 자동으로 만든 파일입니다. 직접 고치지 마세요.
   원본: app.bundle.css, up-rank.css, activity-events.css, monthly-history.css, v8-dashboard.css, v9-performance-ui.css, v23-global-ui.css, home-v23.css, profile-showcase-v23.css, v24-unify.css
   고칠 때는 위 원본 파일을 고치고 node build-css.mjs 를 다시 돌리세요. */

/* ===== app.bundle.css ===== */
:root{--bg:#e9edf2;--bg2:#dfe4ea;--panel:#f6f7f9;--panel2:#e9edf2;--line:#cfd6df;--text:#182231;--muted:#667284;--primary:#667284;--accent:#c19b4f;--shadow:0 20px 60px rgba(38, 50, 66, .10)}
html[data-theme="dark"]{--bg:#0f1520;--bg2:#182231;--panel:#182231;--panel2:#263242;--line:#334154;--text:#e9edf2;--muted:#a0a8b3;--primary:#91b984;--accent:#d0aa60;--shadow:0 20px 60px rgba(0,0,0,.24)}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Pretendard,"Noto Sans KR",system-ui,sans-serif;background:linear-gradient(180deg,var(--bg),var(--bg2));color:var(--text);min-height:100vh}
button,input,select,textarea{font:inherit}
.topbar{position:sticky;top:0;z-index:30;width:min(2460px,calc(100% - 40px));margin:0 auto;padding:15px 0;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(18px)}
.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}
.brand img{width:56px;height:56px;object-fit:contain}
.brand strong{display:block;font-size:18px}
.brand span{font-size:13px;color:var(--muted);letter-spacing:.08em}
.nav-tab,.btn,.circle,.text-btn{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:800}
.nav-tab.active{background:var(--text);color:var(--panel);border-color:var(--text)}
.top-actions{display:flex;gap:8px;align-items:center}
.btn{display:inline-flex;text-decoration:none;align-items:center;justify-content:center}
.btn.primary{background:var(--primary);border-color:var(--primary);color:white}
.btn.cafe{background:#dcefe0;color:#315f3b}
.btn.compact{padding:8px 11px;font-size:14px}
.btn.danger{background:#b95e65;color:white}
.shell{width:min(2460px,calc(100% - 40px));margin:0 auto;padding:12px 0 50px}
.view{display:none}
.view.active{display:block;animation:fade .28s ease}
@keyframes fade{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}
.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}
.schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px}
.calendar-card{border-radius:24px;padding:20px;min-height:1130px}
.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.month-control{display:flex;align-items:center;gap:14px}
.month-control h1{margin:0;font-size:28px}
.month-control p{margin:5px 0 0;color:var(--muted)}
.circle{width:42px;height:42px;border-radius:50%;font-size:22px;padding:0}
.head-actions{display:flex;gap:8px;flex-wrap:wrap}
.filters{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}
.filter{border:1px solid color-mix(in srgb,var(--filter) 55%,var(--line));background:color-mix(in srgb,var(--filter) 12%,var(--panel));padding:7px 10px;border-radius:999px;color:var(--text);font-weight:800;cursor:pointer}
.filter.active{box-shadow:inset 0 0 0 2px var(--filter)}
.weekday-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.weekday-row span{text-align:center;padding:11px;color:var(--muted);font-weight:900}
.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);min-height:930px}
.day{min-height:150px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px;background:var(--panel)}
.day.outside{opacity:.34}
.day.today{box-shadow:inset 0 0 0 2px var(--primary)}
.date-num{font-weight:900;margin-bottom:8px}
.events{display:flex;flex-direction:column;gap:6px}
.event-pill{position:relative;width:100%;text-align:left;border:1px solid color-mix(in srgb,var(--event) 58%,var(--line));border-left:6px solid var(--event);background:color-mix(in srgb,var(--event) 17%,var(--panel));color:var(--text);border-radius:10px;padding:7px 45px 7px 9px;cursor:pointer;font-size:14px;font-weight:850}
.event-pill time{display:block;color:var(--muted);font-size:12px}
.event-star{position:absolute;right:6px;top:6px;border:0;background:transparent;color:#9d7b21;font-weight:950;cursor:pointer}
.event-pill.dimmed{opacity:.2;filter:grayscale(.7)}
.event-pill.focused{box-shadow:0 0 0 2px #d6b858}
.side-stack{display:flex;flex-direction:column;gap:18px}
.side-stack>.panel{border-radius:20px;padding:18px}
.section-title,.view-head{display:flex;justify-content:space-between;align-items:center}
.eyebrow{font-size:12px;letter-spacing:.18em;color:var(--muted);font-weight:900}
.section-title h2,.view-head h1{margin:5px 0 12px}
.upcoming{display:flex;align-items:center;gap:10px;padding:10px;border-radius:13px;background:var(--panel2);cursor:pointer}
.notice-link,.text-btn{color:var(--primary);font-weight:900}
.text-btn{border:0;background:transparent}
.quick-links{display:grid;gap:8px}
.quick-links a,.quick-links button{border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:10px;border-radius:10px;text-decoration:none;text-align:left;font-weight:800}
.view-head{padding:18px 4px}
.view-head p{margin:0;color:var(--muted)}
.streamer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.streamer-card{border-radius:20px;padding:18px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}
.streamer-top{display:flex;gap:13px;align-items:center}
.streamer-top img{width:74px;height:74px;border-radius:50%;object-fit:cover;border:3px solid #d7bb67;background:white}
.streamer-top h3{margin:0 0 4px}
.streamer-top a{font-size:14px;color:var(--primary)}
.streamer-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:15px}
.metric{background:var(--panel2);border-radius:12px;padding:12px}
.metric strong{display:block;font-size:19px}
.metric span{font-size:13px;color:var(--muted)}
.streamer-schedule{margin-top:12px;color:var(--muted);font-size:14px;line-height:1.6}
.network-layout,.stats-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:18px}
.network-layout>.panel,.stats-columns>.panel{border-radius:22px;padding:20px}
.network-graph{min-height:660px;position:relative;overflow:hidden;background:radial-gradient(circle at center,color-mix(in srgb,var(--primary) 13%,var(--panel2)),var(--panel2));border-radius:18px}
.node{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center}
.node img{width:66px;height:66px;border-radius:50%;object-fit:cover;border:4px solid var(--accent);background:white}
.node.center img{width:104px;height:104px;border-color:var(--primary)}
.node span{margin-top:5px;background:var(--panel);padding:4px 8px;border-radius:999px;font-size:14px;font-weight:900}
.edge{position:absolute;height:3px;background:color-mix(in srgb,var(--primary) 65%,transparent);transform-origin:left center}
.rank-item{display:grid;grid-template-columns:30px 1fr auto;gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}
.stats-grid,.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0 18px}
.stat-card{padding:20px;border-radius:18px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}
.stat-card strong{display:block;font-size:24px}
.stat-card span{font-size:14px;color:var(--muted)}
.breakdown-row{display:grid;grid-template-columns:90px 1fr 36px;gap:9px;align-items:center;margin:11px 0}
.bar{height:10px;background:var(--panel2);border-radius:999px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--bar);border-radius:inherit}
.admin-only{display:none!important}
.admin-mode .admin-only{display:inline-flex!important}
.modal-layer{position:fixed;inset:0;z-index:60;background:rgba(15, 21, 32, .58);display:grid;place-items:center;padding:22px}
.modal-layer[hidden]{display:none}
.modal{width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:22px;padding:25px;position:relative}
.modal.narrow{width:min(460px,100%)}
.close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:var(--muted);font-size:26px;cursor:pointer}
.modal form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.modal label{font-size:14px;font-weight:900}
.modal input,.modal select,.modal textarea{width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:10px}
.wide{grid-column:1/-1}
.form-actions{display:flex;gap:8px}
.helper{font-size:14px;color:var(--muted);line-height:1.6}
.category-badge{display:inline-block;padding:6px 10px;border-radius:999px;color:#131b27;font-size:13px;font-weight:900}
.detail-meta{color:var(--muted)}
.participant-strip{display:flex;gap:16px;flex-wrap:wrap;margin:18px 0}
.participant{width:78px;text-align:center;color:inherit;text-decoration:none}
.participant img,.member-option img,.member-admin-row img,.member-chip img{object-fit:cover;border-radius:50%;border:3px solid #d6b75e;background:white}
.participant img{width:68px;height:68px}
.participant span{display:block;font-size:14px;font-weight:900}
.member-picker{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.member-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel2)}
.member-chip img{width:28px;height:28px}
.member-chip button{border:0;background:transparent}
.member-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:11px}
.member-option{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:15px;padding:11px;cursor:pointer}
.member-option.selected{outline:3px solid var(--accent)}
.member-option img{width:70px;height:70px}
.member-option span{display:block}
.wide-modal{width:min(1060px,calc(100vw - 30px))}
.member-form{display:grid;grid-template-columns:1fr 1.5fr 1.2fr 1fr auto auto;gap:10px;align-items:end}
.inline-fetch{display:grid;grid-template-columns:1fr auto;gap:7px}
.member-avatar-preview{display:flex;align-items:center;gap:8px;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}
.member-avatar-preview img{width:48px;height:48px;border-radius:50%;object-fit:cover}
.member-avatar-preview small{font-size:12px;color:var(--muted)}
.member-admin-list{display:grid;gap:8px;margin-top:17px}
.member-admin-row{display:grid;grid-template-columns:52px 1fr auto auto auto;gap:8px;align-items:center;padding:9px;border-radius:13px;background:var(--panel2)}
.member-admin-row img{width:48px;height:48px}
.member-admin-row a,.member-admin-row small{display:block;font-size:13px;color:var(--muted)}
.summary-modal{width:min(1000px,100%)}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;background:#182231;color:white;padding:11px 15px;border-radius:12px;transition:.2s;z-index:80}
.toast.show{opacity:1;transform:translate(-50%,0)}
.live-card{position:fixed;z-index:55;top:16px;left:16px;width:410px;padding:9px;border-radius:17px;background:rgba(15, 21, 32, .94);color:white;display:grid;grid-template-columns:145px 1fr 22px;gap:10px;align-items:center;text-decoration:none}
.live-card[hidden]{display:none}
.live-card>img{width:145px;height:80px;object-fit:cover;border-radius:11px}
.live-card strong,.live-card small{display:block}
.live-card small{color:#cfd6df}
.live-badge{color:#ff6571;font-size:13px;font-weight:900}
.live-card button{border:0;background:transparent;color:white;font-size:20px}
@media(max-width:1260px){.topbar{grid-template-columns:auto 1fr}
.top-actions{grid-column:1/-1;justify-content:flex-end}
.schedule-layout,.network-layout,.stats-columns{grid-template-columns:1fr}
.calendar-card{min-height:auto}
.calendar-grid{min-height:720px}
.side-stack{display:grid;grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.topbar,.shell{width:min(100% - 22px,2460px)}
.topbar{display:flex;flex-wrap:wrap}
.top-actions{margin-left:auto}
.brand span{display:none}
.calendar-head{align-items:flex-start;flex-direction:column}
.calendar-grid{grid-auto-rows:minmax(120px,1fr)}
.day{min-height:115px;padding:6px}
.event-pill{font-size:12px}
.side-stack{display:flex}
.stats-grid,.summary-grid{grid-template-columns:1fr 1fr}
.modal form,.member-form{grid-template-columns:1fr}
.wide{grid-column:auto}
.live-card{width:calc(100% - 20px);left:10px}
.live-card>img{width:120px}}
.event-image-preview{display:none;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel2)}
.event-image-preview.has-image{display:flex}
.event-image-preview img{width:180px;height:110px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.schedule-detail-modal{width:min(760px,calc(100vw - 24px));padding:28px 28px 20px}
.detail-heading{text-align:center;padding:18px 16px 8px}
.detail-heading h2{margin:12px auto 8px;font-size:clamp(28px,4vw,46px);line-height:1.18;max-width:640px}
.detail-heading .detail-meta{display:inline-flex;padding:8px 15px;border-radius:999px;background:#bfe8fa;color:#175d86;font-weight:900}
.schedule-detail-modal .participant-strip{justify-content:center;margin:28px 0 22px}
.schedule-detail-modal .participant{width:86px}
.schedule-detail-modal .participant img{width:72px;height:72px;border-color:#eccb56}
.detail-image-wrap{overflow:hidden;border-radius:18px;border:1px solid var(--line);background:var(--panel2);margin:10px 0 20px}
.detail-image-wrap img{display:block;width:100%;max-height:520px;object-fit:cover}
.event-notice-card{border:2px solid #a96500;border-radius:18px;overflow:hidden;background:#fff8bf;margin:20px 0;color:#3a3326}
.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.detail-actions .btn:last-child{margin-left:auto}
.star-action.active{background:#fff0a8;border-color:#d1ad27;color:#725600}
[data-theme="dark"] .event-notice-card{background:#4d431d;color:#fff6cf;border-color:#c48a1d}
@media(max-width:760px){.schedule-detail-modal{padding:20px 16px}
.detail-heading h2{font-size:26px}
.schedule-detail-modal .participant{width:72px}
.schedule-detail-modal .participant img{width:60px;height:60px}
.event-image-preview{align-items:flex-start;flex-direction:column}
.event-image-preview img{width:100%;height:180px}
.detail-actions .btn{width:100%}
.detail-actions .btn:last-child{margin-left:0}}
.schedule-detail-modal{width:min(980px,calc(100vw - 28px));padding:30px 34px 24px}
.detail-image-wrap{margin:18px auto 24px;overflow:auto;border-radius:18px;border:1px solid var(--line);background:linear-gradient(135deg,var(--panel2),var(--panel));box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.detail-image-wrap img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;background:transparent}
.event-notice-card{display:grid;grid-template-columns:86px minmax(0,1fr);border:1px solid color-mix(in srgb,var(--primary) 38%,var(--line));border-radius:20px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),var(--panel));margin:24px 0;color:var(--text);box-shadow:0 18px 42px rgba(24, 34, 49, .09)}
.event-notice-mark{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.22em;font-size:13px;font-weight:950;color:white;background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#263242));padding:18px 0}
.event-notice-main{padding:22px 24px 24px;min-width:0}
.event-notice-kicker{display:block;color:var(--primary);font-size:13px;font-weight:950;letter-spacing:.14em;margin-bottom:7px}
.event-notice-main h3{margin:0 0 14px;font-size:20px;line-height:1.35}
.event-notice-main p{margin:0;line-height:1.85;white-space:pre-wrap;color:var(--text);background:transparent;padding:0}
.event-notice-main a{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;border-radius:999px;text-decoration:none;background:var(--text);color:var(--panel);font-weight:900}
.event-notice-main a span{font-size:17px}
[data-theme="dark"] .event-notice-card{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 13%,var(--panel)),var(--panel));color:var(--text);border-color:color-mix(in srgb,var(--primary) 50%,var(--line))}
[data-theme="dark"] .event-notice-main p{background:transparent;color:var(--text)}
@media(max-width:700px){.schedule-detail-modal{padding:24px 16px 18px}
.event-notice-card{grid-template-columns:1fr}
.event-notice-mark{writing-mode:horizontal-tb;transform:none;padding:9px 14px;justify-content:flex-start}
.event-notice-main{padding:18px}
.detail-image-wrap{border-radius:14px}}
.schedule-detail-modal{
  --detail-ink:#182231;
  --detail-soft:#e9edf2;
  padding:0 38px 28px;
  overflow-y:auto;
  scrollbar-gutter:stable;
}
.schedule-detail-modal>.close{
  position:sticky;
  top:14px;
  z-index:25;
  margin:14px 0 -48px auto;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--line) 80%,transparent);
  border-radius:50%;
  background:color-mix(in srgb,var(--panel) 92%,transparent);
  box-shadow:0 10px 28px rgba(19, 27, 39, .16);
  backdrop-filter:blur(14px);
  color:var(--text);
  font-size:24px;
  line-height:1;
}
.schedule-detail-modal>.close:hover{transform:scale(1.04);background:var(--panel2)}
.detail-heading{
  text-align:left;
  padding:56px 72px 22px 8px;
  border-bottom:1px solid var(--line);
  position:relative;
}
.detail-heading:before{
  content:"";
  position:absolute;
  left:8px;
  bottom:-1px;
  width:92px;
  height:3px;
  border-radius:999px;
  background:var(--primary);
}
.detail-heading .category-badge{
  border-radius:8px;
  padding:7px 11px;
  letter-spacing:.04em;
  font-size:13px;
  box-shadow:none;
}
.detail-heading h2{
  max-width:760px;
  margin:16px 0 12px;
  font-family:"Pretendard Variable","SUIT Variable",Pretendard,"Noto Sans KR",sans-serif;
  font-size:clamp(34px,4.2vw,58px);
  font-weight:850;
  letter-spacing:-.055em;
  line-height:1.08;
  text-wrap:balance;
}
.detail-heading .detail-meta{
  display:inline-flex;
  align-items:center;
  padding:0;
  border-radius:0;
  background:transparent;
  color:var(--muted);
  font-size:15px;
  font-weight:750;
  letter-spacing:-.015em;
}
.schedule-detail-modal .participant-strip{
  justify-content:flex-start;
  padding:20px 8px 4px;
  margin:0;
}
.schedule-detail-modal .participant{
  width:76px;
  transition:transform .18s ease;
}
.schedule-detail-modal .participant:hover{transform:translateY(-3px)}
.schedule-detail-modal .participant img{
  width:64px;
  height:64px;
  border:2px solid color-mix(in srgb,var(--primary) 55%,#fff);
  box-shadow:0 8px 20px rgba(30,50,35,.12);
}
.detail-image-wrap{
  margin:24px 8px 28px;
  border-radius:22px;
  border:0;
  background:#f1f3f6;
  box-shadow:0 16px 42px rgba(24, 34, 49, .12);
}
.detail-image-wrap img{border-radius:22px}
.event-notice-card{
  grid-template-columns:1fr;
  margin:28px 8px;
  border:0;
  border-radius:22px;
  background:var(--panel2);
  box-shadow:none;
  overflow:visible;
  position:relative;
}
.event-notice-card[hidden]{display:none!important}
.event-notice-mark{
  position:absolute;
  top:-11px;
  left:20px;
  display:inline-flex;
  width:auto;
  writing-mode:horizontal-tb;
  transform:none;
  padding:6px 10px;
  border-radius:999px;
  background:var(--primary);
  letter-spacing:.13em;
  font-size:12px;
}
.event-notice-main{padding:30px 24px 22px}
.event-notice-kicker{margin-bottom:9px;color:var(--muted);font-size:12px}
.event-notice-main h3{font-size:20px;letter-spacing:-.035em;margin-bottom:12px}
.event-notice-main p{font-size:15px;line-height:1.9;color:var(--text)}
.event-notice-main a{
  margin-top:18px;
  padding:9px 13px;
  background:transparent;
  color:var(--primary);
  border:1px solid color-mix(in srgb,var(--primary) 45%,var(--line));
}
.event-notice-main a:hover{background:color-mix(in srgb,var(--primary) 8%,var(--panel))}
.detail-actions{
  position:sticky;
  bottom:-1px;
  z-index:18;
  margin:26px -38px -28px;
  padding:15px 38px 18px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  border-top:1px solid var(--line);
  backdrop-filter:blur(16px);
}
[data-theme="dark"] .schedule-detail-modal{--detail-soft:#182231}
[data-theme="dark"] .detail-image-wrap{background:#182231}
@media(max-width:700px){.schedule-detail-modal{padding:0 16px 18px}
.schedule-detail-modal>.close{top:10px;margin:10px 0 -44px auto;width:42px;height:42px}
.detail-heading{padding:52px 54px 19px 2px}
.detail-heading h2{font-size:30px}
.schedule-detail-modal .participant-strip{padding-left:2px}
.detail-image-wrap,.event-notice-card{margin-left:0;margin-right:0}
.detail-actions{margin:22px -16px -18px;padding:13px 16px 16px}}
.portal-modal-layer{padding:34px}
.portal-modal{width:min(1500px,94vw);max-height:90vh;overflow:auto;padding:34px 38px 42px}
.portal-modal>.close{position:sticky;top:0;float:right;z-index:5}
.portal-modal .view-head{margin-bottom:26px}
.portal-modal .panel{box-shadow:none}
.day-summary-modal{width:min(760px,92vw);padding:30px;max-height:86vh;overflow:auto}
.day-summary-head{padding:4px 56px 20px 2px;border-bottom:1px solid var(--line)}
.day-summary-head h2{margin:6px 0 5px;font-size:30px;letter-spacing:-.045em}
.day-summary-head p{margin:0;color:var(--muted);font-weight:700}
.day-summary-list{display:grid;gap:10px;margin:20px 0}
.day-summary-item{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;padding:16px 18px;border:1px solid color-mix(in srgb,var(--event) 38%,var(--line));border-left:6px solid var(--event);border-radius:16px;background:color-mix(in srgb,var(--event) 9%,var(--panel));color:var(--text);text-align:left;cursor:pointer;transition:.18s ease}
.day-summary-item:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(24, 34, 49, .10)}
.day-summary-time{font-size:14px;font-weight:850;color:color-mix(in srgb,var(--event) 70%,var(--text))}
.day-summary-copy{min-width:0;display:grid;gap:4px}
.day-summary-copy b{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.day-summary-copy small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.day-summary-star{font-weight:850;color:#a98215;white-space:nowrap}
@media(max-width:700px){.portal-modal-layer{padding:10px}
.portal-modal{padding:20px 16px 28px}
.day-summary-item{grid-template-columns:76px 1fr}
.day-summary-star{grid-column:2}
.day-summary-copy small{white-space:normal}
.day-summary-modal{padding:22px 16px}}
#interestOnly.active{background:#667284;color:#fff;border-color:#667284;box-shadow:0 0 0 3px color-mix(in srgb,#667284 22%,transparent)}
#interestOnly.active::before{content:'✓';margin-right:5px}
.filter{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,opacity .16s ease}
.filter:hover{transform:translateY(-1px)}
.filter.active{background:color-mix(in srgb,var(--filter) 28%,var(--panel));box-shadow:inset 0 0 0 2px var(--filter),0 3px 10px color-mix(in srgb,var(--filter) 18%,transparent)}
.filter.active::before{content:'✓';margin-right:4px;font-size:.9em}
.day.today{position:relative;box-shadow:inset 0 0 0 3px var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--panel))}
.today-label{display:inline-flex;margin-left:6px;padding:2px 6px;border-radius:999px;background:var(--primary);color:white;font-size:12px;vertical-align:2px}
.day.today-jump{animation:todayPulse 1.35s ease}
@keyframes todayPulse{0%,100%{box-shadow:inset 0 0 0 3px var(--primary)}35%{box-shadow:inset 0 0 0 4px var(--primary),0 0 0 10px color-mix(in srgb,var(--primary) 23%,transparent)}}
.live-toast{position:fixed;z-index:55;top:14px;left:14px;display:flex;align-items:center;max-width:min(560px,calc(100vw - 28px));border-radius:999px;background:linear-gradient(135deg,#b91f46,#8f1236);box-shadow:0 12px 30px rgba(115,15,45,.32);color:#fff;overflow:hidden;opacity:0;transform:translateY(-12px) scale(.98);transition:opacity .22s ease,transform .22s ease}
.live-toast.show{opacity:1;transform:none}
.live-toast[hidden]{display:none}
.live-toast>a{min-width:0;display:flex;align-items:center;gap:8px;padding:8px 11px 8px 12px;color:inherit;text-decoration:none;font-size:14px;white-space:nowrap}
.live-toast b{font-size:13px;letter-spacing:.02em}
.live-toast strong{min-width:0;max-width:330px;overflow:hidden;text-overflow:ellipsis;font-size:14px}
.live-toast .live-cta{font-weight:900;opacity:.95}
.live-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.65);animation:livePulse 1.7s infinite}
.live-toast>button{width:31px;height:31px;margin-right:4px;flex:0 0 auto;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:18px;cursor:pointer}
.live-toast>button:hover{background:rgba(255,255,255,.22)}
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.65)}70%{box-shadow:0 0 0 8px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media(max-width:620px){.live-toast{top:8px;left:8px;max-width:calc(100vw - 16px)}
.live-toast>a{padding-left:10px}
.live-toast strong{max-width:44vw}
.live-toast .live-cta{display:none}}
.live-toast{display:block;overflow:visible;border-radius:18px;background:transparent;box-shadow:none;opacity:0;transform:translateY(-12px) scale(.98)}
.live-toast.show{opacity:1;transform:none}
.live-primary{display:flex;align-items:center;border-radius:999px;background:linear-gradient(135deg,#b91f46,#8f1236);box-shadow:0 12px 30px rgba(115,15,45,.32);overflow:hidden}
.live-primary>a{min-width:0;display:flex;align-items:center;gap:8px;padding:8px 11px 8px 12px;color:#fff;text-decoration:none;font-size:14px;white-space:nowrap}
.live-primary>button{width:31px;height:31px;margin-right:4px;flex:0 0 auto;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:18px;cursor:pointer}
.live-primary>button:hover{background:rgba(255,255,255,.22)}
.live-today{display:block;margin:7px 0 0 4px;border:1px solid rgba(51, 65, 84, .14);border-radius:999px;padding:7px 11px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 6px 18px rgba(24, 34, 49, .12);color:var(--muted);font-size:13px;font-weight:850;cursor:pointer}
.live-today:hover{color:var(--text);transform:translateY(-1px)}
.live-start-alert{position:fixed;z-index:90;top:26px;left:50%;display:flex;align-items:center;gap:12px;min-width:330px;padding:14px 18px;border-radius:18px;background:rgba(19, 27, 39, .96);box-shadow:0 18px 48px rgba(9, 13, 20, .28);color:#fff;opacity:0;transform:translate(-50%,-18px) scale(.97);transition:.24s ease;pointer-events:none}
.live-start-alert.show{opacity:1;transform:translate(-50%,0) scale(1)}
.live-start-alert div{display:grid;gap:2px}
.live-start-alert b{font-size:12px;letter-spacing:.16em;color:#ff7995}
.live-start-alert strong{font-size:15px}
@media(max-width:620px){.live-primary>a{max-width:calc(100vw - 58px)}
.live-start-alert{top:70px;min-width:0;width:calc(100vw - 24px)}}
.summary-modal>.close{
  position:sticky;
  top:10px;
  float:right;
  z-index:30;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid color-mix(in srgb,var(--text) 18%,var(--line));
  border-radius:50%;
  background:var(--text);
  color:var(--panel);
  box-shadow:0 10px 28px rgba(15, 21, 32, .22);
  font-size:26px;
  line-height:1;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease;
}
.summary-modal>.close:hover{transform:scale(1.06);box-shadow:0 14px 36px rgba(15, 21, 32, .3)}
.daily-brief-panel{min-height:360px}
.section-title.mini{margin-top:2px}
.section-title.mini h3{margin:4px 0 10px;font-size:17px}
.today-brief{display:grid;gap:9px}
.today-brief-date{display:flex;justify-content:space-between;align-items:end;margin-bottom:2px}
.today-brief-date strong{font-size:17px}
.today-brief-date span{font-size:13px;color:var(--muted)}
.brief-event,.hot-row{width:100%;border:0;color:var(--text);cursor:pointer;text-align:left}
.brief-event{display:grid;grid-template-columns:55px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-left:5px solid var(--event);border-radius:13px;background:color-mix(in srgb,var(--event) 11%,var(--panel2))}
.brief-event:hover,.hot-row:hover{transform:translateY(-1px)}
.brief-time{font-size:14px;font-weight:900;color:color-mix(in srgb,var(--event) 70%,var(--text))}
.brief-copy{display:grid;gap:2px;min-width:0}
.brief-copy b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brief-copy small{font-size:12px;color:var(--muted)}
.brief-star{font-size:13px;color:#9d7b21;font-weight:900}
.empty-brief{text-align:center;padding:18px 8px;color:var(--muted)}
.empty-brief img{width:64px;height:64px;object-fit:contain;opacity:.75}
.empty-brief strong{display:block;color:var(--text)}
.empty-brief p{margin:5px 0;font-size:14px}
.brief-divider{height:1px;background:var(--line);margin:17px 0}
.monthly-hot-list{display:grid;gap:6px}
.hot-row{display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;padding:9px 7px;border-radius:11px;background:transparent}
.hot-row:hover{background:var(--panel2)}
.hot-rank{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--text);color:var(--panel);font-size:13px;font-weight:900}
.hot-copy{display:grid;min-width:0}
.hot-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.hot-copy small{color:var(--muted);font-size:12px}
.hot-row>strong{font-size:13px;color:#9d7b21}
.brief-empty-text{font-size:14px;color:var(--muted)}
.summary-modal{width:min(1120px,94vw);padding:34px 38px 38px;overflow:auto}
.summary-head{padding:4px 70px 20px 2px;border-bottom:1px solid var(--line)}
.summary-head h2{margin:7px 0 8px;font-size:30px;letter-spacing:-.045em}
.summary-head p{margin:0;color:var(--muted)}
.summary-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}
.summary-empty{color:var(--muted);font-size:14px}
@media(max-width:900px){.summary-grid{grid-template-columns:1fr 1fr}
.summary-modal{padding:24px 20px}
.summary-head{padding-right:58px}}
@media(max-width:560px){.summary-grid{grid-template-columns:1fr}
.summary-modal>.close{width:44px;height:44px;font-size:23px}}
.event-pill{padding:8px 48px 9px 10px;min-height:48px}
.event-title{display:block;font-size:14px;line-height:1.35;white-space:normal}
.field-helper{display:block;margin-top:6px;color:var(--muted);font-size:12px;font-weight:650}
@media(max-width:760px){.event-pill{min-height:42px}}
.application-panel{position:relative;overflow:hidden}
.application-panel::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:#d95b64}
.application-panel .section-title{padding-left:4px}
.application-panel p{margin:0 0 12px;color:var(--muted);line-height:1.6}
.application-dates{display:block;font-size:18px;letter-spacing:.02em;margin:4px 0 14px;color:#a63c47}
.application-link{display:flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,#d95b64 48%,var(--line));background:color-mix(in srgb,#d95b64 9%,var(--panel));color:#9f3441;padding:10px 12px;border-radius:11px;text-decoration:none;font-weight:900}
.application-strip{display:block;position:relative;z-index:2;width:calc(100% + 16px);height:14px;margin:0 -8px 6px;border:0;padding:0 8px;background:repeating-linear-gradient(135deg,#d96c73 0 7px,#ef9aa0 7px 12px);color:#6f252b;text-align:left;font-size:12px;font-weight:950;line-height:14px;white-space:nowrap;overflow:hidden;cursor:pointer;box-shadow:0 1px 3px rgba(126,45,53,.18)}
.application-strip.application-start{margin-left:0;width:calc(100% + 8px);border-radius:7px 0 0 7px}
.application-strip.application-end{width:calc(100% + 8px);border-radius:0 7px 7px 0}
.application-strip.application-single{margin:0 0 6px;width:100%;border-radius:7px}
.application-strip.application-middle span,.application-strip.application-end span{display:none}
.event-pill.multi-day{border-radius:0;margin-left:-8px;margin-right:-8px;width:calc(100% + 16px);border-left-width:1px;border-right-width:1px;box-shadow:none}
.event-pill.multi-day.range-start{margin-left:0;width:calc(100% + 8px);border-left:6px solid var(--event);border-radius:10px 0 0 10px}
.event-pill.multi-day.range-end{margin-right:0;width:calc(100% + 8px);border-radius:0 10px 10px 0}
.event-pill.multi-day.range-single{margin:0;width:100%;border-radius:10px}
.event-pill.multi-day.range-middle{background:color-mix(in srgb,var(--event) 22%,var(--panel))}
.range-continuation{font-size:12px;color:color-mix(in srgb,var(--event) 72%,var(--text));opacity:.75}
.day{overflow:visible}
.events{position:relative;z-index:1}
@media(max-width:760px){.application-strip{height:10px;line-height:10px;font-size:0;margin-bottom:4px}
.event-pill.multi-day{margin-left:-6px;margin-right:-6px;width:calc(100% + 12px)}
.event-pill.multi-day.range-start{margin-left:0;width:calc(100% + 6px)}
.event-pill.multi-day.range-end{margin-right:0;width:calc(100% + 6px)}}
.application-panel{display:block}
.application-panel.is-empty{border-style:dashed;background:color-mix(in srgb,var(--panel) 88%,#d95b64 12%)}
.application-empty{font-size:14px;line-height:1.55;color:var(--muted);padding:12px;border-radius:10px;background:color-mix(in srgb,var(--panel) 75%,var(--line));margin-top:8px}
.application-panel:not(.is-empty) .application-empty{display:none!important}
.application-strip{z-index:5;margin-top:0;transform:translateY(0)}
.application-strip.application-week-start{margin-left:0;width:calc(100% + 8px);border-radius:7px 0 0 7px}
.application-strip.application-middle:not(.application-week-start),.application-strip.application-end{border-left:0}
.event-pill.multi-day{min-height:54px;border-top:1px solid color-mix(in srgb,var(--event) 55%,transparent);border-bottom:1px solid color-mix(in srgb,var(--event) 55%,transparent)}
.event-pill.multi-day.range-middle,.event-pill.multi-day.range-end{border-left:0}
.event-pill.multi-day.range-week-start{margin-left:0;width:calc(100% + 8px);border-left:6px solid var(--event);border-radius:10px 0 0 10px}
.event-pill.multi-day.range-middle:not(.range-week-start){border-radius:0}
.event-pill.multi-day.range-end:not(.range-week-start){border-radius:0 10px 10px 0}
.event-pill.multi-day .range-fill{display:block;min-height:15px}
.event-pill.multi-day.range-middle:not(.range-week-start) time,.event-pill.multi-day.range-end:not(.range-week-start) time{display:none}
.calendar-grid{overflow:visible}
.day{min-width:0}
.event-pill{min-height:52px}
.event-pill.multi-day{min-height:52px}
.entry-notice-layer{z-index:1200;background:rgba(24, 34, 49, .58);backdrop-filter:blur(8px)}
.entry-notice-card{position:relative;width:min(620px,calc(100vw - 32px));max-height:min(86vh,820px);padding:0;overflow:auto;border-radius:28px;box-shadow:0 28px 90px rgba(19, 27, 39, .28);border:1px solid color-mix(in srgb,var(--line) 76%,transparent)}
.entry-notice-image-wrap{margin:0;background:color-mix(in srgb,var(--panel) 88%,var(--bg));border-radius:28px 28px 0 0;overflow:hidden}
.entry-notice-image-wrap img{display:block;width:100%;max-height:420px;object-fit:contain;background:#f1f3f6}
.entry-notice-copy{padding:34px 38px 22px;text-align:center}
.entry-notice-copy h2{margin:8px 0 14px;font-size:clamp(27px,4vw,42px);line-height:1.15;letter-spacing:-.04em}
.entry-notice-copy p{margin:0 auto 22px;max-width:480px;white-space:pre-line;line-height:1.75;color:var(--muted);font-weight:650}
.entry-notice-link{display:inline-flex;min-width:180px;justify-content:center}
.entry-notice-footer{display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:18px 30px 24px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 91%,var(--bg))}
.today-hide-check{display:flex;align-items:center;gap:8px;margin-right:auto;font-size:15px;font-weight:750;color:var(--muted);cursor:pointer}
.today-hide-check input{width:18px;height:18px;accent-color:var(--primary)}
.entry-notice-editor-preview{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--bg)}
.entry-notice-editor-preview img{width:220px;max-height:160px;object-fit:contain;border-radius:12px;background:white}
.entry-notice-enable-row{display:flex!important;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--bg);font-weight:850}
.entry-notice-enable-row input{width:20px;height:20px;accent-color:var(--primary)}
@media(max-width:640px){.entry-notice-card{border-radius:22px}
.entry-notice-copy{padding:28px 22px 18px}
.entry-notice-footer{align-items:stretch;flex-direction:column;padding:16px 22px 22px}
.today-hide-check{margin:0}
.entry-notice-footer .btn{width:100%}
.entry-notice-image-wrap img{max-height:320px}}
.entry-notice-card{
  overflow:hidden;
}
.entry-notice-image-wrap{
  width:100%;
  margin:0;
  border-radius:28px 28px 0 0;
}
.entry-notice-image-wrap img{
  width:100%;
  max-width:none;
  height:auto;
  display:block;
  object-fit:cover;
  object-position:center;
  margin:0;
}
@media(max-width:640px){.entry-notice-image-wrap{
    border-radius:22px 22px 0 0;
  }}
.entry-notice-layer{
  background:rgba(24, 34, 49, .48);
  backdrop-filter:blur(10px) saturate(.8);
}
.entry-notice-card{
  width:min(720px,calc(100vw - 36px));
  border-radius:24px;
  background:color-mix(in srgb,var(--panel) 97%,#e9edf2);
  border:1px solid color-mix(in srgb,var(--line) 82%,transparent);
  box-shadow:0 30px 90px rgba(24, 34, 49, .22);
}
.entry-notice-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:22px 28px 18px;
  border-bottom:1px solid var(--line);
}
.entry-notice-header>div{
  display:grid;
  gap:3px;
}
.entry-notice-kicker{
  color:var(--muted);
  font-size:13px;
  font-weight:850;
  letter-spacing:.12em;
}
.entry-notice-header strong{
  font-size:17px;
  letter-spacing:-.02em;
}
.entry-notice-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--primary) 11%,var(--panel));
  color:var(--primary);
  font-size:12px;
  font-weight:950;
  letter-spacing:.12em;
}
.entry-notice-main{
  display:grid;
  grid-template-columns:minmax(0,220px) minmax(0,1fr);
  gap:28px;
  padding:28px;
  align-items:center;
}
.entry-notice-image-wrap{
  width:100%;
  aspect-ratio:4/3;
  border-radius:18px;
  overflow:hidden;
  background:color-mix(in srgb,var(--bg) 88%,var(--panel));
  border:1px solid var(--line);
  box-shadow:none;
}
.entry-notice-image-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.entry-notice-copy{
  padding:0;
  text-align:left;
}
.entry-notice-copy h2{
  margin:0 0 13px;
  font-size:clamp(25px,3.2vw,36px);
  line-height:1.18;
  letter-spacing:-.045em;
  color:var(--text);
}
.entry-notice-copy p{
  margin:0;
  max-width:none;
  color:var(--muted);
  font-size:16px;
  line-height:1.75;
  font-weight:600;
  white-space:pre-line;
}
.entry-notice-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:22px;
  padding:0 0 5px;
  color:var(--primary);
  font-weight:900;
  text-decoration:none;
  border-bottom:1px solid color-mix(in srgb,var(--primary) 45%,transparent);
}
.entry-notice-link:hover{
  gap:14px;
}
.entry-notice-link b{
  font-size:15px;
}
.entry-notice-footer{
  flex-direction:row;
  align-items:center;
  padding:17px 24px;
  background:color-mix(in srgb,var(--bg) 72%,var(--panel));
}
.entry-notice-confirm{
  min-width:88px;
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line));
  background:var(--panel);
  color:var(--text);
}
.today-hide-check{
  font-size:14px;
}
@media(max-width:680px){.entry-notice-card{
    border-radius:20px;
  }
.entry-notice-header{
    padding:18px 20px 15px;
  }
.entry-notice-main{
    grid-template-columns:1fr;
    gap:20px;
    padding:20px;
  }
.entry-notice-image-wrap{
    aspect-ratio:16/9;
  }
.entry-notice-copy h2{
    font-size:24px;
  }
.entry-notice-footer{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
    padding:16px 20px 20px;
  }
.entry-notice-confirm{
    width:100%;
  }}
:root{
  --radius-xs:10px;
  --radius-sm:14px;
  --radius-md:18px;
  --radius-lg:24px;
  --shadow-soft:0 10px 30px rgba(24, 34, 49, .07);
  --shadow-hover:0 16px 42px rgba(24, 34, 49, .12);
  --motion-fast:160ms;
  --motion-base:240ms;
}
html{scroll-behavior:smooth}
body{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  font-family:Pretendard,"SUIT","Noto Sans KR","Apple SD Gothic Neo",system-ui,sans-serif;
}
button,a,input,select,textarea{font:inherit}
button,a{
  transition:
    transform var(--motion-fast) ease,
    box-shadow var(--motion-fast) ease,
    background-color var(--motion-fast) ease,
    border-color var(--motion-fast) ease,
    color var(--motion-fast) ease,
    opacity var(--motion-fast) ease;
}
button:active,.btn:active{transform:translateY(1px) scale(.985)}
.btn:hover,.text-btn:hover{
  transform:translateY(-1px);
  box-shadow:var(--shadow-soft);
}
.panel{
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
  border-color:color-mix(in srgb,var(--line) 88%,transparent);
}
.toolbar,.topbar{
  backdrop-filter:saturate(1.08) blur(10px);
}
.calendar-shell{
  gap:18px;
}
.calendar-stage{
  position:relative;
  overflow:hidden;
  border-radius:var(--radius-lg);
}
.calendar-grid{
  animation:calendarFade .24s ease both;
}
@keyframes monthNext{
  from{opacity:0;transform:translateX(24px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes monthPrev{
  from{opacity:0;transform:translateX(-24px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes calendarFade{
  from{opacity:.2}
  to{opacity:1}
}
.day{
  border-radius:var(--radius-md);
  transition:
    transform var(--motion-fast) ease,
    box-shadow var(--motion-fast) ease,
    border-color var(--motion-fast) ease,
    background-color var(--motion-fast) ease;
}
.day:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
  border-color:color-mix(in srgb,var(--primary) 26%,var(--line));
  z-index:3;
}
.day.today{
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 44%,transparent),var(--shadow-soft);
}
@keyframes todayPulse{
  0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 0%,transparent)}
  40%{box-shadow:0 0 0 8px color-mix(in srgb,var(--primary) 16%,transparent)}
}
.event-pill{
  border-radius:var(--radius-sm);
  box-shadow:none;
  transition:
    transform var(--motion-fast) ease,
    box-shadow var(--motion-fast) ease,
    filter var(--motion-fast) ease;
}
.event-pill:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px color-mix(in srgb,var(--event) 16%,transparent);
  filter:saturate(1.03);
}
.event-pill:active{transform:scale(.985)}
.event-pill time{
  font-variant-numeric:tabular-nums;
  letter-spacing:.01em;
}
.modal-layer{
  opacity:0;
  transition:opacity 180ms ease;
}
.modal-layer.is-open{
  opacity:1;
}
.modal-layer>.modal,.modal-layer>.panel,.modal-layer>.entry-notice-card{
  transform:translateY(14px) scale(.985);
  opacity:0;
  transition:
    transform 220ms cubic-bezier(.2,.7,.2,1),
    opacity 180ms ease;
}
.modal-layer.is-open>.modal,.modal-layer.is-open>.panel,.modal-layer.is-open>.entry-notice-card{
  transform:translateY(0) scale(1);
  opacity:1;
}
.close{
  backdrop-filter:blur(8px);
}
input,select,textarea{
  border-radius:var(--radius-sm);
  transition:border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background-color var(--motion-fast) ease;
}
input:focus,select:focus,textarea:focus{
  outline:none;
  border-color:color-mix(in srgb,var(--primary) 55%,var(--line));
  box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 11%,transparent);
}
.section-title h2{
  letter-spacing:-.035em;
}
.eyebrow{
  letter-spacing:.12em;
}
.app-loader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:color-mix(in srgb,var(--bg) 97%,white);
  transition:opacity .32s ease,visibility .32s ease;
}
.app-loader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
@keyframes loaderDot{
  0%,100%{transform:translateY(0);opacity:.45}
  50%{transform:translateY(-7px);opacity:1}
}
.topbar,.toolbar{
  background:color-mix(in srgb,var(--panel) 92%,transparent);
}
[data-theme="dark"] .topbar,[data-theme="dark"] .toolbar{
  background:color-mix(in srgb,var(--panel) 89%,transparent);
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important;
  }}
.calendar-stage{
  perspective:1200px;
  contain:paint;
  will-change:transform,opacity;
  transition:
    transform 190ms cubic-bezier(.4,0,.8,.2),
    opacity 170ms ease,
    filter 190ms ease;
}
.calendar-stage.calendar-exit-left{
  transform:translateX(-46px) scale(.985);
  opacity:0;
  filter:blur(2px);
}
.calendar-stage.calendar-exit-right{
  transform:translateX(46px) scale(.985);
  opacity:0;
  filter:blur(2px);
}
.calendar-stage.calendar-enter-right{
  transform:translateX(46px) scale(.985);
  opacity:0;
  filter:blur(2px);
  transition:none;
}
.calendar-stage.calendar-enter-left{
  transform:translateX(-46px) scale(.985);
  opacity:0;
  filter:blur(2px);
  transition:none;
}
.calendar-stage.calendar-settled{
  transform:translateX(0) scale(1);
  opacity:1;
  filter:none;
}
.calendar-stage.calendar-enter-right.calendar-settled,.calendar-stage.calendar-enter-left.calendar-settled{
  transition:
    transform 250ms cubic-bezier(.16,.8,.2,1),
    opacity 210ms ease,
    filter 220ms ease;
}
@media(max-width:980px){.calendar-shell{
    grid-template-columns:1fr!important;
  }}
@media(max-width:760px){body{
    overflow-x:hidden;
  }
.topbar{
    padding:12px 14px;
    gap:10px;
  }
.brand img{
    width:42px;
    height:42px;
  }
.top-actions{
    gap:6px;
  }
.top-actions .btn,.top-actions button{
    min-height:38px;
    padding:0 10px;
    font-size:14px;
  }
.toolbar{
    position:sticky;
    top:0;
    z-index:30;
    margin-inline:-12px;
    padding:10px 12px;
    border-radius:0 0 18px 18px;
    box-shadow:0 8px 24px rgba(24, 34, 49, .08);
  }
.month-nav{
    width:100%;
    justify-content:space-between;
  }
.calendar-stage{
    overflow-x:auto;
    border-radius:18px;
    scrollbar-width:thin;
  }
.calendar-grid{
    min-width:840px;
  }
.day{
    min-height:116px;
  }
.modal-layer{
    align-items:flex-end;
    padding:0;
  }
.modal-layer>.modal:not(.game-modal),.modal-layer>.panel:not(.game-panel),.modal-layer>.entry-notice-card{
    width:100%!important;
    max-width:none!important;
    max-height:92dvh;
    margin:0;
    border-radius:24px 24px 0 0!important;
  }
.modal-layer.is-open>.modal:not(.game-modal),.modal-layer.is-open>.panel:not(.game-panel),.modal-layer.is-open>.entry-notice-card{
    transform:translateY(0);
  }
.modal-layer>.modal:not(.game-modal),.modal-layer>.panel:not(.game-panel),.modal-layer>.entry-notice-card{
    transform:translateY(34px);
  }
.event-editor form,.form-grid{
    grid-template-columns:1fr!important;
  }
.wide{
    grid-column:auto!important;
  }
.form-actions{
    position:sticky;
    bottom:0;
    z-index:4;
    margin:12px -20px -20px;
    padding:14px 20px calc(14px + env(safe-area-inset-bottom));
    border-top:1px solid var(--line);
    background:color-mix(in srgb,var(--panel) 94%,transparent);
    backdrop-filter:blur(14px);
  }}
body.admin-mode #toggleAdmin{
  background:color-mix(in srgb,var(--primary) 14%,var(--panel));
  border-color:color-mix(in srgb,var(--primary) 40%,var(--line));
  color:var(--primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 8%,transparent);
}
body.admin-mode .admin-only{
  animation:adminReveal .18s ease both;
}
@keyframes adminReveal{
  from{opacity:0;transform:translateY(-3px)}
  to{opacity:1;transform:none}
}
:where(button,a,input,select,textarea):focus-visible{
  outline:3px solid color-mix(in srgb,var(--primary) 28%,transparent);
  outline-offset:2px;
}
.mobile-info-tabs{display:none}
@media(max-width:760px){.entry-notice-layer{
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
  }
.entry-notice-layer>.entry-notice-card{
    width:min(560px,calc(100vw - 36px))!important;
    max-width:560px!important;
    max-height:86dvh!important;
    margin:auto!important;
    border-radius:22px!important;
    transform:translateY(12px) scale(.985)!important;
  }
.entry-notice-layer.is-open>.entry-notice-card{
    transform:translateY(0) scale(1)!important;
  }
.entry-notice-main{
    grid-template-columns:1fr!important;
    gap:18px!important;
    padding:20px!important;
  }
.entry-notice-image-wrap{
    width:100%!important;
    aspect-ratio:16/9!important;
    margin:0!important;
    border-radius:15px!important;
  }
.entry-notice-copy{padding:0!important}
.entry-notice-copy h2{font-size:22px!important}
.entry-notice-footer{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
    padding:15px 20px 19px!important;
  }
.entry-notice-confirm{width:100%!important}
.side-stack{
    display:block!important;
    margin-top:14px;
  }
.mobile-info-tabs{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
    margin:0 0 10px;
    padding:6px;
    border:1px solid var(--line);
    border-radius:16px;
    background:color-mix(in srgb,var(--panel) 94%,transparent);
    box-shadow:0 12px 32px rgba(24, 34, 49, .12);
    backdrop-filter:blur(14px);
  }
.mobile-info-tab{
    min-width:0;
    min-height:42px;
    padding:7px 5px;
    border:0;
    border-radius:11px;
    background:transparent;
    color:var(--muted);
    font-size:14px;
    font-weight:850;
    cursor:pointer;
    box-shadow:none!important;
  }
.mobile-info-tab.active{
    background:color-mix(in srgb,var(--primary) 13%,var(--panel));
    color:var(--primary);
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 22%,transparent)!important;
  }
.mobile-tab-panel{
    display:none!important;
    margin:0!important;
    animation:mobilePanelIn .2s ease both;
  }
.mobile-tab-panel.mobile-tab-active{display:block!important}
@keyframes mobilePanelIn{
    from{opacity:0;transform:translateY(7px)}
    to{opacity:1;transform:none}
  }}
@media(min-width:761px){.mobile-tab-panel{display:block!important}}.mobile-schedule-app{display:none}
@media(max-width:760px){.schedule-layout{display:none!important}
.mobile-schedule-app{display:block;min-height:calc(100dvh - 72px);padding:18px 14px 110px;background:radial-gradient(circle at 10% 0%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 32%),var(--bg)}
.mobile-week-head{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;margin:4px 0 12px;text-align:center}
.mobile-week-head span{display:block;color:var(--muted);font-size:14px;font-weight:800}
.mobile-week-head h1{margin:2px 0 0;font-size:23px;letter-spacing:-.045em}
.mobile-week-arrow{width:44px;height:44px;border:0;border-radius:50%;background:var(--panel);color:var(--text);font-size:17px;font-weight:900;box-shadow:var(--shadow-soft)}
.mobile-week-actions{display:flex;justify-content:center;gap:8px;margin-bottom:18px}
.mobile-week-actions button{min-height:38px;padding:0 15px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);font-size:14px;font-weight:850}
.mobile-week-actions button.active{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 11%,var(--panel))}
.mobile-week-list{display:grid;gap:11px}
.mobile-week-list.week-left{animation:mobileWeekLeft .28s ease}
.mobile-week-list.week-right{animation:mobileWeekRight .28s ease}
@keyframes mobileWeekLeft{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}
@keyframes mobileWeekRight{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:none}}
.mobile-day-card{display:grid;grid-template-columns:72px 1fr;min-height:112px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:22px;background:var(--panel);overflow:hidden;box-shadow:0 9px 24px rgba(24, 34, 49, .07)}
.mobile-day-card.is-today{border-color:color-mix(in srgb,var(--primary) 50%,var(--line));box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 12%,transparent)}
.mobile-day-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-right:1px solid var(--line);color:var(--muted)}
.mobile-day-card.is-today .mobile-day-date{background:color-mix(in srgb,var(--primary) 15%,var(--panel));color:var(--primary)}
.mobile-day-date span{font-size:15px;font-weight:850}
.mobile-day-date strong{font-size:26px;line-height:1}
.mobile-day-date em{margin-top:6px;padding:3px 7px;border-radius:999px;background:var(--primary);color:white;font-size:12px;font-style:normal;font-weight:900}
.mobile-day-events{display:grid;align-content:center;gap:8px;padding:11px}
.mobile-event-item{position:relative;display:grid;grid-template-columns:6px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:64px;padding:9px 11px 9px 8px;border:0;border-radius:15px;text-align:left;background:color-mix(in srgb,var(--event) 19%,var(--panel));color:var(--text)}
.mobile-event-item.is-mine{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--event) 46%,transparent)}
.mobile-event-accent{align-self:stretch;border-radius:999px;background:var(--event)}
.mobile-event-copy{min-width:0;display:grid;gap:4px}
.mobile-event-copy b{font-size:16px;line-height:1.35}
.mobile-event-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px}
.mobile-event-item time{padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--panel) 84%,transparent);color:var(--text);font-size:13px;font-weight:850;white-space:nowrap}
.mobile-interest-icon{min-width:28px;text-align:center;font-size:19px;line-height:1;filter:drop-shadow(0 2px 4px rgba(77,66,24,.12))}
.mobile-empty-day{padding:18px;color:var(--muted);font-size:14px;text-align:center}
.mobile-info-tabs{display:none!important}
.side-stack{display:block!important;margin:0!important}
.mobile-tab-panel{display:none!important}
.mobile-tab-panel.mobile-tab-active{display:block!important;margin:18px 14px 100px!important}}
.event-star,.brief-star,.day-summary-star{font-size:18px;letter-spacing:0}
@media(max-width:760px){.mobile-day-date{
    appearance:none;width:100%;border:0;border-right:1px solid var(--line);
    border-radius:0;background:transparent;cursor:pointer;
  }
.mobile-day-card.is-today .mobile-day-date{
    background:color-mix(in srgb,var(--primary) 15%,var(--panel));
  }
.mobile-day-add{
    display:none;width:100%;min-height:38px;
    border:1px dashed color-mix(in srgb,var(--primary) 36%,var(--line));
    border-radius:12px;background:color-mix(in srgb,var(--primary) 6%,var(--panel));
    color:var(--primary);font-size:14px;font-weight:900;
  }
body.admin-mode .mobile-day-add{display:block}
.modal-layer{z-index:1700}}
.calendar-stage{
  width:100%;
  min-width:0;
}
.calendar-stage .calendar-grid{
  width:100%;
}
@media(max-width:760px){.calendar-stage{
    overflow:visible;
  }}
.cloud-status{
  display:inline-flex;align-items:center;min-height:32px;padding:0 10px;
  border:1px solid var(--line);border-radius:999px;background:var(--panel);
  color:var(--muted);font-size:13px;font-weight:900;white-space:nowrap;
}
.cloud-status[data-mode="cloud"]{color:#3f7f52;background:#edf6ef;border-color:#bcd9c4}
.cloud-status[data-mode="sync"]{color:#96731b;background:#fff8df;border-color:#ead99b}
.cloud-status[data-mode="error"]{color:#a94750;background:#fbedef;border-color:#e5b7bd}
@media(max-width:760px){.cloud-status{display:none}}
.schedule-layout{
  grid-template-columns:minmax(230px,280px) minmax(0,1fr) minmax(280px,340px);
  align-items:start;
}
.memo-stack{position:sticky;top:92px}
.memo-panel{
  position:relative;overflow:hidden;min-height:320px;padding:22px;
  background:#fff8d9;border-color:#eadb94;
}
.memo-panel::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(transparent 31px,rgba(143,122,52,.08) 32px);
  background-size:100% 32px;
}
.memo-panel[data-tone="green"]{background:#edf8e8;border-color:#bfd9b5}
.memo-panel[data-tone="blue"]{background:#eaf4fb;border-color:#b8d3e5}
.memo-panel[data-tone="pink"]{background:#fbeef3;border-color:#e5bdcb}
.memo-panel[data-tone="neutral"]{background:var(--panel);border-color:var(--line)}
.memo-panel-head,.memo-content,.memo-empty{position:relative;z-index:1}
.memo-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.memo-panel-head h2{margin:4px 0 0;font-size:21px;letter-spacing:-.04em}
.memo-content{display:grid;gap:10px}
.memo-content p,.memo-content h3{margin:0}
.memo-content h3{margin-top:6px;font-size:17px}
.memo-bullet,.memo-check{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start}
.memo-bullet span,.memo-check span{font-weight:950;color:var(--primary)}
.memo-check.done{opacity:.58}
.memo-link{
  display:block;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.58);
  color:var(--primary);font-weight:850;text-decoration:none;border:1px solid rgba(51, 65, 84, .12);
}
.memo-empty{color:var(--muted);font-size:15px}
@media(max-width:1180px){.schedule-layout{grid-template-columns:minmax(220px,260px) minmax(0,1fr)}
.side-stack{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.memo-stack{display:none}}
.live-toast{
  top:max(12px,env(safe-area-inset-top));
  left:14px;
  width:min(560px,calc(100vw - 28px));
  max-width:none;
  overflow:visible;
  background:transparent;
  box-shadow:none;
  border-radius:20px;
}
.live-primary{
  display:flex;
  align-items:stretch;
  min-height:54px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  border-radius:17px;
  background:
    linear-gradient(110deg,rgba(170,17,61,.98),rgba(112,9,43,.98));
  box-shadow:0 13px 34px rgba(103,10,40,.30);
}
.live-primary>a{
  flex:1;
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:9px 12px;
  color:#fff;
  text-decoration:none;
}
.soop-live-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  font-size:12px;
  font-weight:950;
  letter-spacing:.08em;
}
.soop-live-badge .live-dot{
  width:7px;
  height:7px;
}
.live-copy{
  min-width:0;
  display:grid;
  gap:2px;
}
.live-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:14px;
  line-height:1.35;
}
.live-copy small{
  color:rgba(255,255,255,.72);
  font-size:12px;
  font-weight:700;
}
.live-cta{
  display:inline-flex;
  align-items:center;
  gap:5px;
  white-space:nowrap;
  font-size:13px;
  font-weight:900;
}
.live-primary>button{
  width:42px;
  height:auto;
  margin:0;
  border-radius:0;
  background:rgba(0,0,0,.10);
  font-size:19px;
}
.live-primary>button:hover{
  background:rgba(0,0,0,.20);
}
.live-today{
  margin:7px 0 0 8px;
  padding:7px 12px;
  background:color-mix(in srgb,var(--panel) 96%,transparent);
}
body.is-live .topbar{
  padding-top:2px;
}
.live-start-alert{
  border:1px solid rgba(255,255,255,.12);
}
@media(max-width:760px){html,body{
    min-height:100%;
    overscroll-behavior-y:none;
  }
body{
    padding-bottom:env(safe-area-inset-bottom);
  }
.topbar{
    width:100%;
    margin:0;
    padding:10px 12px;
    border-radius:0 0 18px 18px;
  }
.brand{
    min-width:0;
  }
.brand img{
    width:38px;
    height:38px;
  }
.brand strong{
    font-size:17px;
  }
.top-actions{
    gap:5px;
  }
.top-actions>a,.top-actions>button{
    min-height:36px;
    padding:0 9px;
    font-size:13px;
  }
.nav-tab{
    min-height:36px;
    padding:0 12px;
    white-space:nowrap;
    font-size:14px;
  }
.mobile-schedule-app{
    padding:14px 10px calc(104px + env(safe-area-inset-bottom));
  }
.mobile-week-head{
    grid-template-columns:42px minmax(0,1fr) 42px;
    margin-top:2px;
  }
.mobile-week-arrow{
    width:40px;
    height:40px;
  }
.mobile-week-head h1{
    font-size:21px;
  }
.mobile-week-actions{
    margin-bottom:14px;
  }
.mobile-week-actions button{
    min-height:40px;
    padding-inline:14px;
  }
.mobile-day-card{
    grid-template-columns:62px minmax(0,1fr);
    min-height:100px;
    border-radius:18px;
  }
.mobile-day-date strong{
    font-size:24px;
  }
.mobile-day-events{
    gap:7px;
    padding:9px;
  }
.mobile-event-item{
    grid-template-columns:5px minmax(0,1fr) auto;
    gap:8px;
    min-height:60px;
    padding:8px 9px 8px 7px;
  }
.mobile-event-copy b{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    font-size:15px;
  }
.mobile-event-copy small{
    font-size:12px;
  }
.mobile-event-item time{
    grid-column:2;
    justify-self:start;
    padding:5px 8px;
  }
.mobile-interest-icon{
    grid-column:3;
    grid-row:1 / span 2;
    align-self:center;
    min-width:24px;
    font-size:19px;
  }
.modal-layer>.modal:not(.game-modal),.modal-layer>.panel:not(.game-panel){
    max-height:92dvh;
    overflow:auto;
  }
.entry-notice-layer>.entry-notice-card{
    max-height:84dvh!important;
  }
.schedule-detail-modal{
    padding:20px 16px 16px!important;
  }
.detail-heading h2{
    font-size:24px!important;
  }
.schedule-detail-modal .participant{
    width:68px;
  }
.schedule-detail-modal .participant img{
    width:58px;
    height:58px;
  }
.live-toast{
    top:max(7px,env(safe-area-inset-top));
    left:7px;
    width:calc(100vw - 14px);
  }
.live-primary{
    min-height:50px;
    border-radius:15px;
  }
.live-primary>a{
    grid-template-columns:auto minmax(0,1fr);
    gap:8px;
    padding:7px 8px;
  }
.soop-live-badge{
    padding:5px 7px;
  }
.live-copy strong{
    font-size:14px;
  }
.live-copy small{
    display:none;
  }
.live-cta{
    display:none;
  }
.live-primary>button{
    width:38px;
  }
.live-today{
    margin:5px 0 0 5px;
    padding:6px 10px;
    font-size:12px;
  }
.live-start-alert{
    top:calc(65px + env(safe-area-inset-top));
    width:calc(100vw - 20px);
    padding:12px 14px;
  }}
@media(max-width:380px){.top-actions .cafe,.top-actions>a:first-of-type{
    display:none;
  }
.mobile-day-card{
    grid-template-columns:56px minmax(0,1fr);
  }
.mobile-week-head h1{
    font-size:20px;
  }}
@media(pointer:coarse){button,a{
    -webkit-tap-highlight-color:transparent;
  }
.event-pill,.mobile-event-item,.mobile-week-arrow,.mobile-info-tab{
    touch-action:manipulation;
  }}
#soopFetchStatus{display:block;margin-top:7px;line-height:1.45;color:var(--muted)}
#soopFetchStatus[data-state="loading"]{color:#947019}
#soopFetchStatus[data-state="success"]{color:#3c8150}
#soopFetchStatus[data-state="error"]{color:#b44f59}
#fetchSoopProfile:disabled{opacity:.58;cursor:wait}
.member-avatar-preview img{background:var(--panel2);object-fit:cover}
.vod-editor{
  padding:16px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));
  border-radius:16px;
  background:color-mix(in srgb,var(--primary) 5%,var(--panel));
}
.vod-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.vod-editor-head h3{margin:3px 0 0;font-size:18px}
.vod-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.vod-detail-link{background:#173f68;color:#fff;border-color:#173f68}
.stats-portal-expanded{width:min(1180px,calc(100vw - 40px));max-height:92vh;overflow:auto}
.stats-portal-expanded .stats-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
.stats-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.stats-highlight{display:grid;gap:5px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel2)}
.stats-highlight span{font-size:13px;font-weight:900;color:var(--muted);letter-spacing:.06em}
.stats-highlight strong{font-size:22px}
.stats-highlight small{color:var(--muted)}
.duration-rank{width:100%;grid-template-columns:32px minmax(0,1fr) auto;text-align:left;border:0;background:transparent}
.duration-rank span{display:grid;gap:2px}
.duration-rank span strong{font-size:15px}
.duration-rank span small{color:var(--muted);font-size:12px}
.duration-rank em{font-style:normal;font-weight:900;color:var(--primary);white-space:nowrap}
.stats-chart-panel,.heatmap-panel{margin-top:14px}
.stats-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:18px}
.stats-section-head h2{margin:4px 0 0}
.monthly-hours-chart{display:grid;grid-template-columns:repeat(12,minmax(38px,1fr));align-items:end;gap:8px;height:230px}
.month-bar-item{height:100%;display:grid;grid-template-rows:1fr auto auto;gap:5px;text-align:center}
.month-bar-track{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:150px;border-radius:10px;background:var(--panel2);overflow:hidden}
.month-bar-track i{display:block;width:68%;min-height:0;border-radius:8px 8px 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 68%,#fff),var(--primary))}
.month-bar-item b{font-size:13px}
.month-bar-item span{font-size:12px;color:var(--muted)}
.broadcast-heatmap-wrap{overflow-x:auto;padding-bottom:5px}
.broadcast-heatmap{display:grid;grid-template-rows:repeat(7,12px);grid-auto-flow:column;grid-auto-columns:12px;gap:4px;width:max-content}
.heat-cell,.heat-empty{width:12px;height:12px;border:0;border-radius:3px;padding:0}
.heat-empty{visibility:hidden}
.heat-cell.level-0{background:var(--panel2)}
.heat-cell.level-1{background:#cfe6d4}
.heat-cell.level-2{background:#91c49d}
.heat-cell.level-3{background:#579d68}
.heat-cell.level-4{background:#27663b}
.heat-cell:hover{outline:2px solid var(--primary);outline-offset:1px}
.heatmap-legend{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:12px}
.heatmap-legend i{width:11px;height:11px;border-radius:3px}
.heatmap-legend i:nth-of-type(1){background:#cfe6d4}
.heatmap-legend i:nth-of-type(2){background:#91c49d}
.heatmap-legend i:nth-of-type(3){background:#579d68}
.heatmap-legend i:nth-of-type(4){background:#27663b}
@media(max-width:900px){.stats-portal-expanded .stats-grid{grid-template-columns:repeat(3,1fr)}
.monthly-hours-chart{min-width:720px}}
@media(max-width:760px){.vod-editor-grid{grid-template-columns:1fr 1fr}
.vod-editor-head{align-items:flex-start;flex-direction:column}
.stats-portal-expanded{width:100%;max-height:92dvh}
.stats-portal-expanded .stats-grid{grid-template-columns:repeat(2,1fr)}
.stats-highlight-grid{grid-template-columns:1fr}
.stats-columns{grid-template-columns:1fr!important}
.broadcast-heatmap{grid-template-rows:repeat(7,11px);grid-auto-columns:11px}
.heat-cell,.heat-empty{width:11px;height:11px}}
.vod-results{display:grid;gap:7px;margin:10px 0}
.vod-result{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto 30px;
  align-items:center;
  gap:9px;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel);
}
.vod-result>b{color:var(--primary);font-size:13px}
.vod-result>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800}
.vod-result>small{color:var(--muted);font-size:12px;white-space:nowrap}
.vod-result>button{width:28px;height:28px;border:0;border-radius:50%;background:var(--panel2);color:var(--muted)}
.vod-result.is-error{border-color:#e4b2b7;background:#fff4f5}
.vod-result.is-error>b{color:#b34c57}
.mobile-event-item.is-dimmed{
  opacity:.28;
  filter:grayscale(.75) saturate(.45);
  transform:scale(.985);
}
.mobile-event-item.is-mine{
  opacity:1;
  filter:none;
  box-shadow:
    inset 0 0 0 2px color-mix(in srgb,var(--event) 58%,transparent),
    0 7px 18px color-mix(in srgb,var(--event) 14%,transparent);
}
#mobileInterestFocus.active{
  background:color-mix(in srgb,var(--primary) 16%,var(--panel));
  border-color:color-mix(in srgb,var(--primary) 45%,var(--line));
  color:var(--primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 8%,transparent);
}
@media(max-width:760px){.vod-result{grid-template-columns:auto minmax(0,1fr) 28px}
.vod-result>small{grid-column:2}
.vod-result>button{grid-column:3;grid-row:1/span 2}}
.daily-broadcast-card{display:grid;gap:10px;padding:15px;margin:12px 0;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.daily-broadcast-card h3{margin:3px 0 4px}
.daily-broadcast-card p{margin:0;color:var(--muted)}
.daily-vod-links{display:flex;flex-wrap:wrap;gap:7px}
#categoryFilters{display:grid;gap:14px}
.filter-group{display:flex;flex-wrap:wrap;gap:7px}
.filter-group>strong{width:100%;font-size:14px;color:var(--muted)}
.sub-filter-group{padding-top:12px;border-top:1px solid var(--line)}
.event-pill{position:relative;padding-right:54px}
.event-sub-badge,.sub-category-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:18px;padding:2px 7px;border-radius:999px;
  background:var(--sub,#888);color:#fff;font-size:12px;font-weight:900;white-space:nowrap
}
.event-sub-badge{position:absolute;right:6px;bottom:4px;max-width:48px;overflow:hidden;text-overflow:ellipsis}
.detail-heading{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.detail-heading h2{flex-basis:100%}
:root{
  --portal-bg:#f6f7f9;
  --portal-panel:rgba(255,255,255,.86);
  --portal-line:#dfe4ea;
  --portal-text:#182231;
  --portal-muted:#788291;
  --portal-green:#4f8f62;
  --portal-green-soft:#e7f3ea;
}
html[data-theme="light"] body{
  background:
    radial-gradient(circle at 12% 10%,rgba(198,231,210,.48),transparent 28%),
    radial-gradient(circle at 85% 8%,rgba(218,226,250,.48),transparent 26%),
    linear-gradient(180deg,#f9fbf8 0%,#f1f3f6 100%);
  color:var(--portal-text);
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background-image:radial-gradient(rgba(51, 65, 84, .08) 1px,transparent 1px);
  background-size:24px 24px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.35),transparent 65%);
}
.topbar{
  position:sticky;top:0;z-index:50;
  min-height:74px;padding:0 28px;
  border-bottom:1px solid rgba(207, 214, 223, .9);
  background:rgba(250,252,249,.82);
  backdrop-filter:blur(18px);
  box-shadow:0 8px 30px rgba(51, 65, 84, .05);
}
.brand img{width:42px;height:42px;filter:drop-shadow(0 6px 10px rgba(51, 65, 84, .14))}
.brand strong{font-size:18px}
.brand span{letter-spacing:.08em}
.nav-tab{border-radius:11px;padding:10px 16px;font-weight:800}
.nav-tab.active{background:#fff;color:#285d39;box-shadow:0 5px 14px rgba(42,82,51,.1)}
.shell{max-width:1760px;margin:0 auto;padding:24px 28px 56px}
.portal-hero{
  display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr);
  gap:22px;padding:30px;margin-bottom:18px;border:1px solid rgba(223, 228, 234, .95);
  border-radius:28px;background:
    linear-gradient(125deg,rgba(255,255,255,.96),rgba(241,248,242,.92));
  box-shadow:0 22px 60px rgba(51, 65, 84, .09);
  overflow:hidden;position:relative;
}
.portal-hero:after{
  content:"";position:absolute;width:360px;height:360px;border-radius:50%;
  right:-140px;top:-180px;background:radial-gradient(circle,#ccebd5,transparent 66%);
  opacity:.75
}
.hero-copy{position:relative;z-index:1}
.hero-kicker,.calendar-kicker{
  display:block;font-size:13px;font-weight:900;letter-spacing:.16em;color:#4d8560;margin-bottom:10px
}
.hero-copy h1{margin:0;font-size:clamp(34px,3vw,54px);line-height:1.12;letter-spacing:-.045em}
.hero-copy p{margin:16px 0 22px;color:var(--portal-muted);font-size:16px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.hero-profile-card{
  position:relative;z-index:1;padding:22px;border:1px solid #dfe4ea;border-radius:22px;
  background:rgba(255,255,255,.82);box-shadow:0 14px 34px rgba(38, 50, 66, .08)
}
.hero-profile-top{display:flex;align-items:center;gap:14px}
.hero-profile-top img{width:68px;height:68px;border-radius:20px;background:#edf5ef;padding:6px}
.hero-profile-top div{display:grid;gap:2px}
.hero-profile-top span{font-size:12px;font-weight:900;color:#667284;letter-spacing:.12em}
.hero-profile-top strong{font-size:21px}
.hero-profile-top small{color:#4d8560;font-weight:800}
.hero-profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}
.hero-profile-stats div{padding:13px 10px;border-radius:14px;background:#f6f7f9}
.hero-profile-stats span{display:block;font-size:12px;color:#788291;margin-bottom:5px}
.hero-profile-stats strong{font-size:16px}
.hero-soop-link{
  display:flex;justify-content:center;padding:12px;border-radius:13px;background:#e7f3ea;color:#2f6d43;font-weight:900
}
.dashboard-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.dashboard-card{
  padding:20px;border:1px solid #dfe4ea;border-radius:20px;background:rgba(255,255,255,.88);
  box-shadow:0 10px 30px rgba(51, 65, 84, .055);position:relative;overflow:hidden
}
.dashboard-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--accent)}
.dashboard-card span{display:block;font-size:14px;font-weight:900;color:#667284;margin-bottom:10px}
.dashboard-card strong{display:block;font-size:24px;letter-spacing:-.04em}
.dashboard-card small{display:block;margin-top:5px;color:#788291;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-card.mint{--accent:#62b67b}
.dashboard-card.lavender{--accent:#9581d8}
.dashboard-card.blue{--accent:#5a9fdd}
.dashboard-card.pink{--accent:#dc7da2}
.schedule-layout{
  display:grid!important;grid-template-columns:220px minmax(0,1fr) 290px!important;gap:18px!important;align-items:start
}
.panel{
  border:1px solid rgba(223, 228, 234, .95)!important;border-radius:22px!important;
  background:rgba(255,255,255,.88)!important;backdrop-filter:blur(10px);
  box-shadow:0 12px 36px rgba(51, 65, 84, .06)!important
}
.memo-panel{min-height:240px!important;background:linear-gradient(180deg,#fffdf3,#fff9d9)!important}
.calendar-card{padding:20px!important}
.calendar-head{padding:2px 2px 18px!important;border-bottom:0!important}
.month-control h1{font-size:24px!important;letter-spacing:-.04em}
.filters{
  padding:16px!important;border:1px solid #e9edf2;border-radius:18px;background:#f6f7f9;margin-bottom:16px!important
}
.filter-group>strong{color:#667284!important;letter-spacing:.04em}
.filter{
  border-radius:999px!important;background:#fff!important;border:1px solid color-mix(in srgb,var(--filter) 40%,#dfe4ea)!important;
  box-shadow:none!important
}
.filter.active{background:color-mix(in srgb,var(--filter) 16%,#fff)!important;box-shadow:inset 0 0 0 1px var(--filter)!important}
.weekday-row{margin-bottom:8px!important;color:#788291;font-weight:900}
.calendar-grid{gap:7px!important}
.day{
  min-height:130px!important;border:1px solid #e9edf2!important;border-radius:18px!important;
  background:rgba(255,255,255,.82)!important;box-shadow:0 3px 12px rgba(38, 50, 66, .035);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.day:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(51, 65, 84, .09);border-color:#cfd6df!important}
.day.today{border-color:#8d98a8!important;box-shadow:inset 0 0 0 1px #8d98a8,0 10px 24px rgba(68,117,78,.08)}
.event-pill{
  border-radius:11px!important;border:0!important;box-shadow:0 4px 12px color-mix(in srgb,var(--event) 16%,transparent)!important;
  background:linear-gradient(90deg,color-mix(in srgb,var(--event) 20%,white),color-mix(in srgb,var(--event) 8%,white))!important
}
.event-title{font-weight:900!important}
.portal-side-right{position:sticky;top:96px}
.daily-brief-panel,.application-panel,.compact-panel{padding:18px!important}
.quick-links a,.quick-links button{border-radius:12px!important}
.side-stack{gap:14px!important}
.section-title h2,.section-title h3{letter-spacing:-.03em}
.modal.panel{background:#fff!important}
@media(max-width:1200px){.schedule-layout{grid-template-columns:1fr!important}
.portal-side-right{position:static}
.side-stack{grid-template-columns:repeat(3,1fr);display:grid}}
@media(max-width:900px){.portal-hero{grid-template-columns:1fr;padding:22px}
.dashboard-strip{grid-template-columns:repeat(2,1fr)}
.side-stack{grid-template-columns:1fr}}
@media(max-width:760px){.topbar{min-height:64px;padding:0 14px}
.shell{padding:12px 12px 90px}
.portal-hero{display:none}
.dashboard-strip{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:12px}
.dashboard-card{padding:14px;border-radius:16px}
.dashboard-card strong{font-size:19px}
.calendar-card{display:none!important}}
:root{
  --surface:#ffffff;
  --surface-soft:#f6f7f9;
  --surface-muted:#e9edf2;
  --line-strong:#cfd6df;
  --text-strong:#131b27;
  --text-body:#334154;
  --text-muted:#788291;
  --shadow-soft:0 18px 50px rgba(38, 50, 66, .08);
  --shadow-card:0 10px 28px rgba(38, 50, 66, .06);
}
html[data-theme="dark"]{
  --surface:#131b27;
  --surface-soft:#182231;
  --surface-muted:#182231;
  --line-strong:#263242;
  --text-strong:#f1f3f6;
  --text-body:#cfd6df;
  --text-muted:#8d98a8;
  --shadow-soft:0 24px 60px rgba(0,0,0,.34);
  --shadow-card:0 12px 30px rgba(0,0,0,.22);
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 16% 8%,rgba(102, 114, 132, .20),transparent 30%),
    radial-gradient(circle at 86% 4%,rgba(73,88,127,.16),transparent 26%),
    linear-gradient(180deg,#090d14 0%,#0f1520 100%) !important;
  color:var(--text-strong)!important;
}
html[data-theme="dark"] body:before{
  opacity:.45;
  background-image:radial-gradient(rgba(160, 168, 179, .09) 1px,transparent 1px)
}
html[data-theme="dark"] .topbar{
  background:rgba(15, 21, 32, .9)!important;
  border-bottom-color:#263242!important;
  box-shadow:0 10px 34px rgba(0,0,0,.24)!important
}
html[data-theme="dark"] .brand strong,html[data-theme="dark"] .hero-copy h1,html[data-theme="dark"] .month-control h1,html[data-theme="dark"] .section-title h2,html[data-theme="dark"] .section-title h3,html[data-theme="dark"] .dashboard-card strong,html[data-theme="dark"] .hero-profile-top strong,html[data-theme="dark"] .stat-card strong{
  color:var(--text-strong)!important
}
html[data-theme="dark"] .brand span,html[data-theme="dark"] .hero-copy p,html[data-theme="dark"] .month-control p,html[data-theme="dark"] .dashboard-card small,html[data-theme="dark"] .dashboard-card span,html[data-theme="dark"] .hero-profile-stats span,html[data-theme="dark"] .today-brief,html[data-theme="dark"] .brief-empty-text,html[data-theme="dark"] .memo-empty,html[data-theme="dark"] .application-panel p,html[data-theme="dark"] .calendar-footer-note{
  color:var(--text-muted)!important
}
html[data-theme="dark"] .nav-tab{color:#a0a8b3!important}
html[data-theme="dark"] .nav-tab.active{
  background:#263242!important;color:#f5faf6!important;
  box-shadow:inset 0 0 0 1px #334154,0 7px 18px rgba(0,0,0,.25)!important
}
html[data-theme="dark"] .btn,html[data-theme="dark"] .circle,html[data-theme="dark"] .text-btn{
  color:#e9edf2!important;border-color:#334154!important;background:#182231!important
}
html[data-theme="dark"] .btn.primary{
  background:#5f9f70!important;border-color:#5f9f70!important;color:#fff!important
}
html[data-theme="dark"] .panel,html[data-theme="dark"] .dashboard-card,html[data-theme="dark"] .hero-profile-card,html[data-theme="dark"] .portal-hero,html[data-theme="dark"] .spotlight-row{
  background:rgba(19, 27, 39, .94)!important;
  border-color:#263242!important;
  box-shadow:var(--shadow-soft)!important
}
html[data-theme="dark"] .portal-hero{
  background:
    linear-gradient(130deg,rgba(24, 34, 49, .98),rgba(19, 27, 39, .96))!important
}
html[data-theme="dark"] .portal-hero:after{
  background:radial-gradient(circle,rgba(73,140,91,.34),transparent 68%)!important
}
html[data-theme="dark"] .hero-profile-top img{
  background:#182231!important
}
html[data-theme="dark"] .hero-profile-stats div,html[data-theme="dark"] .filters,html[data-theme="dark"] .quick-links a,html[data-theme="dark"] .quick-links button,html[data-theme="dark"] .month-bar-track{
  background:#182231!important;
  border-color:#263242!important;
  color:#e9edf2!important
}
html[data-theme="dark"] .hero-soop-link{
  background:#284632!important;color:#a9e3b6!important
}
html[data-theme="dark"] .memo-panel{
  background:linear-gradient(180deg,#2a281f,#242219)!important;
  border-color:#4b4734!important
}
html[data-theme="dark"] .day{
  background:#182231!important;
  border-color:#263242!important;
  box-shadow:0 6px 16px rgba(0,0,0,.13)!important
}
html[data-theme="dark"] .day:hover{
  background:#182231!important;
  border-color:#334154!important;
  box-shadow:0 12px 26px rgba(0,0,0,.26)!important
}
html[data-theme="dark"] .day.outside{opacity:.42}
html[data-theme="dark"] .weekday-row{color:#a0a8b3!important}
html[data-theme="dark"] .date-num{color:#dfe4ea!important}
html[data-theme="dark"] .event-pill{
  color:#f6faf7!important;
  background:
    linear-gradient(90deg,color-mix(in srgb,var(--event) 38%,#131b27),color-mix(in srgb,var(--event) 18%,#131b27))!important;
  box-shadow:0 5px 16px rgba(0,0,0,.18)!important
}
html[data-theme="dark"] .event-pill time,html[data-theme="dark"] .event-title{color:#f6f7f9!important}
html[data-theme="dark"] .filter{
  color:#dfe4ea!important;
  background:#182231!important;
  border-color:color-mix(in srgb,var(--filter) 48%,#334154)!important
}
html[data-theme="dark"] .filter.active{
  background:color-mix(in srgb,var(--filter) 34%,#182231)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--filter) 78%,#fff)!important
}
html[data-theme="dark"] .modal.panel{
  background:#131b27!important;color:#f1f3f6!important;border-color:#263242!important
}
html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select{
  /* 2026-08-24 구 초록 팔레트(#182231/#334154) 잔재를 v24 중립 토큰으로 교체.
     이 규칙은 다크모드의 모든 입력창에 !important 로 걸리므로,
     VOD 검색칸 안쪽이 초록으로 칠해지는 원인이었습니다. */
  background:var(--v23-surface-2,#17191f)!important;color:var(--v23-text,#f5f3f5)!important;border-color:var(--v23-line,#292b32)!important
}
html[data-theme="dark"] .cloud-status{
  background:#182231!important;color:#a0a8b3!important;border-color:#263242!important
}
.spotlight-row{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:16px 20px;margin-bottom:14px;
  border:1px solid var(--line-strong);border-radius:18px;
  background:linear-gradient(90deg,rgba(255,255,255,.88),rgba(240,247,242,.94));
  box-shadow:var(--shadow-card)
}
.spotlight-title{display:grid;gap:2px}
.spotlight-title span{font-size:12px;font-weight:900;letter-spacing:.16em;color:#667284}
.spotlight-title strong{font-size:18px;color:var(--text-strong)}
.spotlight-copy{color:var(--text-body);font-weight:800;text-align:right}
.modern-calendar{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,251,248,.96))!important
}
.modern-calendar:before{
  content:"";position:absolute;inset:0 0 auto;height:4px;
  background:linear-gradient(90deg,#78b989,#8ca5dc,#d68aa8)
}
.calendar-head{align-items:flex-start!important}
.month-control{gap:14px!important}
.calendar-kicker{margin-bottom:4px!important}
.calendar-footer-note{
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin-top:14px;padding-top:14px;border-top:1px solid var(--line-strong);
  font-size:13px;color:var(--text-muted)
}
.dashboard-card{
  min-height:112px;display:flex;flex-direction:column;justify-content:center;
  transition:transform .18s ease,box-shadow .18s ease
}
.dashboard-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(44,74,53,.11)}
.portal-hero{min-height:270px}
.hero-profile-card{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between}
.schedule-layout{align-items:stretch!important}
.portal-side-right{align-self:start}
.side-stack .panel,.memo-stack .panel{overflow:hidden}
.daily-brief-panel:before,.application-panel:before,.compact-panel:before,.memo-panel:before{
  content:"";display:block;height:4px;margin:-18px -18px 16px;
  background:linear-gradient(90deg,#7fb58c,#b4d3bc)
}
.application-panel:before{background:linear-gradient(90deg,#dc7f8a,#edb0b7)}
.compact-panel:before{background:linear-gradient(90deg,#78a8d2,#9bc3e5)}
.memo-panel:before{background:linear-gradient(90deg,#e6c764,#f2dc8a)}
@media(max-width:900px){.spotlight-row{align-items:flex-start;flex-direction:column}
.spotlight-copy{text-align:left}}
body{padding-left:260px}
.app-sidebar{
  position:fixed;inset:0 auto 0 0;width:260px;z-index:80;
  display:flex;flex-direction:column;padding:24px 20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(246, 247, 249, .96));
  border-right:1px solid #dfe4ea;
  box-shadow:10px 0 40px rgba(38, 50, 66, .06)
}
.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 4px 22px}
.sidebar-brand img{width:52px;height:52px;border-radius:18px;background:#edf5ef;padding:5px}
.sidebar-brand div{display:grid}
.sidebar-brand strong{font-size:19px}
.sidebar-brand span{font-size:12px;letter-spacing:.12em;color:#788291}
.sidebar-nav{display:grid;gap:7px}
.sidebar-tab{
  display:flex;align-items:center;gap:13px;width:100%;padding:13px 14px;
  border:0;border-radius:14px;background:transparent;color:#334154;text-align:left;
  font-size:15px;cursor:pointer;transition:.18s ease
}
.sidebar-tab span{width:25px;font-size:18px;text-align:center;color:#667284}
.sidebar-tab:hover{background:#f1f3f6;transform:translateX(2px)}
.sidebar-tab.active{background:linear-gradient(90deg,#e5f4e9,#edf7f0);color:#277041;box-shadow:inset 0 0 0 1px #cce6d3}
.sidebar-tab.active span{color:#309450}
.sidebar-tab b{font-weight:900}
.sidebar-profile{margin-top:auto;padding:16px;border:1px solid #dfe4ea;border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(51, 65, 84, .07)}
.sidebar-profile-head{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #e9edf2}
.sidebar-profile-head img{width:44px;height:44px;border-radius:14px;background:#edf5ef}
.sidebar-profile-head div{display:grid}
.sidebar-profile-head span{font-size:13px;color:#788291}
.sidebar-live-row{display:flex;align-items:center;gap:8px;margin:12px 0;font-size:13px;color:#667284}
.sidebar-live-row i{width:8px;height:8px;border-radius:50%;background:#4dbf6a;box-shadow:0 0 0 4px #e3f5e7}
.sidebar-profile>a{display:block;padding:9px 10px;margin-top:7px;border-radius:10px;background:#f6f7f9;color:#334154;font-size:14px;font-weight:800}
.app-topbar{
  left:260px!important;width:calc(100% - 260px)!important;
  justify-content:space-between!important;padding:0 28px!important
}
.page-heading{display:grid;gap:1px}
.page-heading span{font-size:12px;font-weight:900;letter-spacing:.16em;color:#667284}
.page-heading strong{font-size:18px}
.app-shell{padding-top:22px}
.app-page{display:none}
.app-page.active{display:block}
.home-date{text-align:right;display:grid}
.home-date strong{font-size:15px}
.home-date span{font-size:14px;color:#788291}
#page-calendar .portal-hero,#page-calendar .spotlight-row,#page-calendar .dashboard-strip{display:none!important}
#page-calendar .schedule-layout{grid-template-columns:220px minmax(0,1fr) 290px!important}
.page-section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}
.page-section-head span{font-size:12px;font-weight:900;letter-spacing:.15em;color:#788291}
.page-section-head h1{margin:5px 0 4px;font-size:30px;letter-spacing:-.04em}
.page-section-head p{margin:0;color:#788291}
.schedule-page-row{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:14px;width:100%;padding:14px 0;border:0;border-bottom:1px solid #e9edf2;background:transparent;text-align:left}
.schedule-page-row:last-child{border-bottom:0}
.schedule-page-time{font-size:17px;font-weight:900;color:#3f7d51}
.schedule-page-copy{display:grid;gap:3px}
.schedule-page-copy b{font-size:16px}
.schedule-page-copy small{color:#788291}
.schedule-page-date{font-size:13px;color:#788291}
.page-empty{color:#8d98a8;padding:18px 0}
.memo-page-card{padding:22px}
.memo-page-card{min-height:320px}
.memo-page-card p{padding:10px 0;border-bottom:1px solid #e9edf2;margin:0}
html[data-theme="dark"] .app-sidebar{background:linear-gradient(180deg,#131b27,#0f1520);border-color:#263242}
html[data-theme="dark"] .sidebar-brand strong,html[data-theme="dark"] .page-heading strong{color:#f1f3f6}
html[data-theme="dark"] .sidebar-tab{color:#a0a8b3}
html[data-theme="dark"] .sidebar-tab:hover{background:#182231}
html[data-theme="dark"] .sidebar-tab.active{background:linear-gradient(90deg,#294531,#263242);color:#b9edc3;box-shadow:inset 0 0 0 1px #334154}
html[data-theme="dark"] .sidebar-profile{background:#182231;border-color:#263242}
html[data-theme="dark"] .sidebar-profile>a{background:#182231;color:#cfd6df}
html[data-theme="dark"] .schedule-page-row,html[data-theme="dark"] .memo-page-card p{border-color:#263242;color:#e9edf2}
@media(max-width:1100px){body{padding-left:0}
.app-sidebar{transform:translateX(-100%);transition:.22s ease}
body.sidebar-open .app-sidebar{transform:translateX(0)}
.app-topbar{left:0!important;width:100%!important}}
@media(max-width:760px){.app-topbar{padding:0 12px!important}
.page-heading strong{font-size:17px}
.home-date{display:none}}
.live-toast{
  position:fixed!important;
  top:84px!important;
  right:22px!important;
  left:auto!important;
  width:min(430px,calc(100vw - 44px))!important;
  max-width:430px!important;
  z-index:120!important;
  border-radius:18px!important;
  overflow:hidden!important;
  transform:none!important;
  box-shadow:0 18px 45px rgba(63,11,31,.22)!important;
}
.live-primary{min-height:58px!important}
.live-primary>a{padding:12px 14px!important;gap:10px!important}
.live-copy strong{font-size:14px!important}
.live-copy small{font-size:12px!important}
.live-cta{font-size:13px!important}
.live-today{padding:9px 12px!important;font-size:13px!important}
@media(max-width:760px){.live-toast{top:72px!important;right:10px!important;width:calc(100vw - 20px)!important}
.live-copy small{display:none!important}}
#page-calendar .schedule-layout{
  grid-template-columns:minmax(0,1fr) 290px!important;
}
@media(max-width:1200px){#page-calendar .schedule-layout{grid-template-columns:1fr!important}}
.memo-drawer-backdrop{
  position:absolute;inset:0;background:rgba(15, 21, 32, .18);
  opacity:0;transition:opacity .18s ease
}
.memo-drawer-sheet{
  position:absolute;left:260px;top:74px;bottom:0;width:min(390px,calc(100vw - 260px));
  padding:24px;background:linear-gradient(180deg,#fffdf0,#fff8ce);
  border-right:1px solid #eadf9f;
  box-shadow:18px 0 50px rgba(51, 65, 84, .16);
  transform:translateX(-105%);transition:transform .2s ease;
  display:flex;flex-direction:column;gap:18px;pointer-events:auto
}
.memo-drawer-sheet header{display:flex;justify-content:space-between;align-items:flex-start}
.memo-drawer-sheet h2{margin:5px 0 0;font-size:24px;letter-spacing:-.04em}
.memo-drawer-sheet header button{
  width:38px;height:38px;border:0;border-radius:50%;
  background:rgba(255,255,255,.72);font-size:21px
}
.memo-drawer-paper{
  flex:1;overflow:auto;padding:9px 8px 30px;
  background:
    repeating-linear-gradient(180deg,transparent 0,transparent 38px,rgba(159,143,76,.17) 39px);
}
.memo-drawer-paper p{
  display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:start;
  min-height:39px;margin:0;padding:7px 4px;color:#403d2d;font-weight:700;line-height:1.6
}
.memo-drawer-paper p span{color:#a49450;font-size:12px;padding-top:4px}
.memo-drawer-empty{padding:24px 8px;color:#968b5d}
body.memo-drawer-open .memo-drawer-backdrop{opacity:1}
body.memo-drawer-open .memo-drawer-sheet{transform:translateX(0)}
html[data-theme="dark"] .memo-drawer-sheet{
  background:linear-gradient(180deg,#2a281e,#242219);
  border-color:#514b32;color:#f3edc8
}
html[data-theme="dark"] .memo-drawer-paper p{color:#eee8c9}
@media(max-width:1100px){.memo-drawer-sheet{left:0;top:64px;width:min(390px,92vw)}}
#page-vod,#page-notice,#page-memo{display:none!important}
#page-stats .stats-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
#page-stats .stat-card{
  min-height:120px;
  padding:24px!important;
  border-radius:22px!important;
}
#page-stats .stats-highlight-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin:0!important;
}
#page-stats .stats-highlight{
  min-height:140px;
  padding:26px!important;
}
#page-stats .stats-columns{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr)!important;
  gap:22px!important;
}
#page-stats .stats-columns>.panel,#page-stats .stats-chart-panel,#page-stats .heatmap-panel{
  padding:28px!important;
  border-radius:24px!important;
}
#page-stats .stats-chart-panel{margin-top:0!important}
#page-stats .heatmap-panel{
  margin-top:0!important;
  overflow:visible!important;
}
#page-stats .broadcast-heatmap-wrap{
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding:8px 4px 18px!important;
  min-height:155px;
}
#page-stats .broadcast-heatmap{
  min-width:max-content!important;
}
#page-stats .monthly-hours-chart{
  height:300px!important;
  padding-top:16px;
}
#page-stats .month-bar-track{min-height:220px!important}
#page-stats .duration-rank{padding:14px 0!important}
@media(max-width:1000px){#page-stats .stats-grid{grid-template-columns:repeat(2,1fr)!important}
#page-stats .stats-columns{grid-template-columns:1fr!important}}
@media(max-width:700px){#page-stats .stats-grid,#page-stats .stats-highlight-grid{grid-template-columns:1fr!important}}
.app-page{padding-bottom:70px}
.page-section-head{margin-bottom:28px!important}
.filters{
  padding:12px 14px!important;
  border-radius:16px!important;
}
.filter-group{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:6px!important;
}
.filter-group>strong{
  width:100%!important;
  margin-bottom:2px!important;
  font-size:12px!important;
  letter-spacing:.02em!important;
  color:#667284!important;
}
.sub-filter-group{
  margin-top:8px!important;
  padding-top:10px!important;
}
.filter{
  min-height:28px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
  color:color-mix(in srgb,var(--filter) 72%,#182231)!important;
  background:color-mix(in srgb,var(--filter) 18%,#fff)!important;
  border:1px solid color-mix(in srgb,var(--filter) 58%,#dfe4ea)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
.filter:hover{
  transform:translateY(-1px)!important;
  background:color-mix(in srgb,var(--filter) 26%,#fff)!important;
}
.filter.active{
  color:#fff!important;
  background:var(--filter)!important;
  border-color:var(--filter)!important;
  box-shadow:
    0 4px 10px color-mix(in srgb,var(--filter) 26%,transparent),
    inset 0 1px 0 rgba(255,255,255,.2)!important;
}
.filter[data-main-filter="all"],.filter[data-sub-filter="all"]{
  --filter:#788291!important;
}
html[data-theme="dark"] .filter{
  color:color-mix(in srgb,var(--filter) 55%,#f1f3f6)!important;
  background:color-mix(in srgb,var(--filter) 18%,#182231)!important;
  border-color:color-mix(in srgb,var(--filter) 50%,#263242)!important;
}
html[data-theme="dark"] .filter.active{
  color:#fff!important;
  background:var(--filter)!important;
  border-color:color-mix(in srgb,var(--filter) 80%,#fff)!important;
}
@media(max-width:760px){.filters{padding:10px!important}
.filter-group{gap:5px!important}
.filter{
    min-height:26px!important;
    padding:4px 8px!important;
    font-size:12px!important;
  }}
.filter{
  color:color-mix(in srgb,var(--filter) 88%,#111)!important;
  background:color-mix(in srgb,var(--filter) 24%,#fff)!important;
  border-color:color-mix(in srgb,var(--filter) 74%,#cfd6df)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 2px 5px color-mix(in srgb,var(--filter) 13%,transparent)!important;
}
.filter:hover{
  background:color-mix(in srgb,var(--filter) 34%,#fff)!important;
  border-color:color-mix(in srgb,var(--filter) 88%,#cfd6df)!important;
}
.filter.active{
  color:#fff!important;
  background:var(--filter)!important;
  border-color:color-mix(in srgb,var(--filter) 88%,#111)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.18);
  box-shadow:
    0 5px 12px color-mix(in srgb,var(--filter) 34%,transparent),
    inset 0 1px 0 rgba(255,255,255,.24)!important;
}
.event-pill{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 36%,#fff),
      color-mix(in srgb,var(--event) 22%,#fff)
    )!important;
  border-left:4px solid var(--event)!important;
  box-shadow:
    0 5px 13px color-mix(in srgb,var(--event) 24%,transparent)!important;
}
.event-pill:hover{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 45%,#fff),
      color-mix(in srgb,var(--event) 28%,#fff)
    )!important;
}
.event-sub-badge,.sub-category-badge{
  background:var(--sub)!important;
  color:#fff!important;
  border:1px solid color-mix(in srgb,var(--sub) 84%,#111)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.22);
  box-shadow:0 3px 8px color-mix(in srgb,var(--sub) 28%,transparent);
}
.mobile-event-item{
  border-left:5px solid var(--event)!important;
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 22%,#fff),
      #fff 60%
    )!important;
}
.day-summary-item{
  border-left:5px solid var(--event)!important;
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 18%,#fff),
      #fff 58%
    )!important;
}
html[data-theme="dark"] .filter{
  color:color-mix(in srgb,var(--filter) 78%,#fff)!important;
  background:color-mix(in srgb,var(--filter) 26%,#182231)!important;
  border-color:color-mix(in srgb,var(--filter) 72%,#334154)!important;
}
html[data-theme="dark"] .filter.active{
  color:#fff!important;
  background:color-mix(in srgb,var(--filter) 88%,#111)!important;
  border-color:color-mix(in srgb,var(--filter) 92%,#fff)!important;
}
html[data-theme="dark"] .event-pill{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 52%,#0f1520),
      color-mix(in srgb,var(--event) 30%,#0f1520)
    )!important;
  border-left-color:color-mix(in srgb,var(--event) 90%,#fff)!important;
}
html[data-theme="dark"] .mobile-event-item,html[data-theme="dark"] .day-summary-item{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event) 38%,#131b27),
      #182231 64%
    )!important;
}
html,body,button,input,textarea,select{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
#page-home{max-width:1380px;margin:0 auto}
.home-live-strip{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin:18px 0;padding:14px 18px;border-radius:16px;
  background:linear-gradient(90deg,#9f0f3c,#b8144c);color:#fff;
  box-shadow:0 14px 34px rgba(159,15,60,.22)
}
.home-live-left{display:flex;align-items:center;gap:12px}
.home-live-left div{display:grid;gap:2px}
.home-live-left small{opacity:.78}
.home-live-badge{padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.17);font-size:12px;font-weight:900}
.home-live-strip>a{color:#fff;font-weight:900;white-space:nowrap}
.home-profile-mini{padding:22px!important}
.home-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.home-section-head h2{margin:4px 0 0;font-size:20px;letter-spacing:-.04em}
.home-timeline{display:grid}
.home-timeline-row{
  display:grid;grid-template-columns:70px 16px minmax(0,1fr) auto;gap:12px;align-items:center;
  width:100%;padding:15px 0;border:0;border-bottom:1px solid #e9edf2;background:transparent;text-align:left
}
.home-timeline-row:last-child{border-bottom:0}
.home-time{font-size:18px;font-weight:900;color:var(--event)}
.home-dot{width:10px;height:10px;border-radius:50%;background:var(--event);box-shadow:0 0 0 5px color-mix(in srgb,var(--event) 14%,transparent)}
.home-event-copy{display:grid;gap:4px}
.home-event-copy>b{font-size:17px}
.home-event-copy>small{color:var(--text-muted)}
.home-tags{display:flex;gap:5px}
.home-tags i{font-style:normal;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--tag) 17%,#fff);color:color-mix(in srgb,var(--tag) 84%,#131b27);font-size:12px;font-weight:900}
.home-end-time{font-size:14px;font-weight:800;color:var(--text-muted)}
.home-empty{display:grid;gap:4px;padding:40px 6px;color:var(--text-muted)}
.home-empty strong{color:var(--text-body)}
.home-empty.compact{padding:20px 0}
.home-side-column{display:grid;gap:18px}
.home-profile-head{display:flex;align-items:center;gap:12px}
.home-profile-head img{width:58px;height:58px;border-radius:18px;background:#edf5ef;padding:5px}
.home-profile-head div{display:grid;gap:2px}
.home-profile-head span{font-size:12px;font-weight:900;letter-spacing:.12em;color:#788291}
.home-profile-head strong{font-size:19px}
.home-profile-head small{color:#4b8b5e;font-weight:800}
.home-profile-mini>a{display:flex;justify-content:center;margin-top:18px;padding:11px;border-radius:12px;background:#e9f4eb;color:#326f43;font-weight:900}
.home-vod-row{display:grid;grid-template-columns:82px 1fr;gap:11px;align-items:center;padding:10px 0;border-bottom:1px solid #e9edf2}
.home-vod-row:last-child{border-bottom:0}
.home-vod-thumb{display:grid;place-items:center;height:50px;border-radius:10px;background:#e9edf2;overflow:hidden}
.home-vod-thumb img{width:100%;height:100%;object-fit:cover}
.home-vod-thumb b{font-size:12px;color:#788291}
.home-vod-row>span:last-child{display:grid;gap:3px}
.home-vod-row strong{font-size:14px}
.home-vod-row small{font-size:12px;color:var(--text-muted)}
html[data-theme="dark"] .home-timeline-row,html[data-theme="dark"] .home-vod-row{border-color:#263242}
html[data-theme="dark"] .home-tags i{background:color-mix(in srgb,var(--tag) 32%,#182231);color:#fff}
html[data-theme="dark"] .home-profile-mini>a{background:#294632;color:#b9e9c3}
@media(max-width:950px){.home-side-column{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-date{display:none}
.home-side-column{grid-template-columns:1fr}
.home-timeline-row{grid-template-columns:58px 12px minmax(0,1fr)}
.home-end-time{display:none}}
.app-topbar .top-actions{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.app-topbar .live-toast{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  max-width:none!important;
  margin:0 0 0 4px!important;
  transform:none!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:none!important;
  background:transparent!important;
  flex:0 1 440px;
}
.app-topbar .live-primary{
  min-height:42px!important;
  border-radius:12px!important;
  overflow:hidden!important;
}
.app-topbar .live-primary>a{
  min-height:42px!important;
  padding:7px 10px!important;
  gap:8px!important;
}
.app-topbar .soop-live-badge{
  padding:4px 7px!important;
  font-size:12px!important;
}
.app-topbar .live-copy{
  min-width:0;
}
.app-topbar .live-copy strong{
  display:block;
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px!important;
}
.app-topbar .live-copy small{
  font-size:12px!important;
}
.app-topbar .live-cta{
  font-size:12px!important;
  white-space:nowrap;
}
.app-topbar #closeLive{
  width:34px!important;
  min-width:34px!important;
  height:42px!important;
}
.app-topbar .live-today{
  display:none!important;
}
#page-calendar .schedule-layout{
  grid-template-columns:minmax(0,1fr) 290px!important;
  transition:grid-template-columns .18s ease;
}
.calendar-memo-panel{
  display:none;
  min-width:0;
}
body.memo-panel-open #page-calendar .schedule-layout{
  grid-template-columns:320px minmax(0,1fr) 290px!important;
}
body.memo-panel-open .calendar-memo-panel{
  display:block;
}
.memo-inline-sheet{
  position:sticky;
  top:96px;
  height:calc(100vh - 116px);
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:20px;
  border:1px solid #eadf9f;
  border-radius:22px;
  background:linear-gradient(180deg,#fffdf0,#fff8ce);
  box-shadow:0 14px 36px rgba(77,75,48,.10);
}
.memo-inline-sheet header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.memo-inline-sheet h2{
  margin:5px 0 0;
  font-size:22px;
  letter-spacing:-.04em;
}
.memo-inline-sheet header button{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.72);
  font-size:18px;
}
.memo-inline-sheet .memo-drawer-paper{
  flex:1;
  min-height:0;
  overflow:auto;
}
html[data-theme="dark"] .memo-inline-sheet{
  background:linear-gradient(180deg,#2a281e,#242219);
  border-color:#514b32;
  color:#f3edc8;
}
@media(max-width:1350px){.app-topbar .live-copy small{display:none!important}
.app-topbar .live-copy strong{max-width:130px}
.app-topbar .live-toast{flex-basis:330px}}
@media(max-width:1150px){.app-topbar .live-toast{
    order:5;
    flex-basis:100%;
    margin-top:6px!important;
  }
.app-topbar{
    min-height:106px!important;
    align-items:flex-start!important;
    padding-top:10px!important;
  }
#page-calendar .schedule-layout,body.memo-panel-open #page-calendar .schedule-layout{
    grid-template-columns:1fr!important;
  }
body.memo-panel-open .calendar-memo-panel{
    display:block;
    order:-1;
  }
.memo-inline-sheet{
    position:relative;
    top:auto;
    height:auto;
    max-height:420px;
  }}
@media(max-width:760px){.app-topbar .live-toast{display:none!important}
.memo-inline-sheet{max-height:360px}}
.schedule-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.schedule-summary-card{position:relative;overflow:hidden;min-height:132px;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px}
.schedule-summary-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-38px;bottom:-50px;background:var(--summary-soft)}
.schedule-summary-card span{font-size:14px;font-weight:900;color:var(--muted)}
.schedule-summary-card strong{font-size:26px;line-height:1.1}
.schedule-summary-card small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-summary-card.tone-1{--summary-soft:#dff4e5}
.schedule-summary-card.tone-2{--summary-soft:#e6e4fb}
.schedule-summary-card.tone-3{--summary-soft:#dff0fa}
.schedule-summary-card.tone-4{--summary-soft:#fae5ec}
.schedule-today-panel,.schedule-upcoming-panel{padding:24px!important;border-radius:24px!important;margin-bottom:18px}
.schedule-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.schedule-panel-head h2{margin:3px 0 0}
.schedule-today-date{padding:8px 12px;border-radius:999px;background:var(--panel2);font-size:14px;font-weight:900;color:var(--muted)}
.schedule-page-row{position:relative;display:grid;grid-template-columns:5px 88px minmax(0,1fr) 120px;align-items:center;gap:16px;width:100%;padding:16px 10px 16px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:.18s}
.schedule-page-row:hover{transform:translateX(4px);background:color-mix(in srgb,var(--event) 7%,transparent)}
.schedule-page-row:last-child{border-bottom:0}
.schedule-page-row.featured{min-height:112px;border:1px solid color-mix(in srgb,var(--event) 35%,var(--line));border-radius:18px;margin-bottom:10px;padding-right:16px;background:linear-gradient(90deg,color-mix(in srgb,var(--event) 10%,var(--panel)),var(--panel))}
.schedule-page-accent{align-self:stretch;border-radius:999px;background:var(--event)}
.schedule-page-time{display:grid;gap:2px}
.schedule-page-time b{font-size:18px}
.schedule-page-time small,.schedule-page-date small{font-size:12px;color:var(--muted)}
.schedule-page-copy{display:grid;gap:5px;min-width:0}
.schedule-page-copy>b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-page-copy>small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-page-badges{display:flex;gap:6px}
.schedule-page-badges i{font-style:normal;font-size:12px;font-weight:900;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--badge) 20%,var(--panel));color:color-mix(in srgb,var(--badge) 75%,#131b27)}
.schedule-page-badges i.sub{background:var(--panel2);color:var(--muted)}
.schedule-page-date{display:grid;gap:3px;text-align:right}
.schedule-page-date b{font-size:14px}
.schedule-day-group{display:grid;grid-template-columns:90px minmax(0,1fr);gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.schedule-day-group:last-child{border-bottom:0}
.schedule-day-group>header{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.schedule-day-group>header div{display:grid}
.schedule-day-group>header strong{font-size:19px}
.schedule-day-group>header span,.schedule-day-group>header em{font-size:13px;color:var(--muted);font-style:normal}
.schedule-day-group>header em{padding:4px 7px;border-radius:999px;background:var(--panel2);font-weight:900}
.schedule-empty-state{min-height:130px;border:1px dashed var(--line);border-radius:18px;display:grid;place-content:center;text-align:center;gap:6px;color:var(--muted)}
.schedule-empty-state b{color:var(--text)}
.heatmap-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(260px,1.5fr);gap:12px;margin-bottom:20px}
.heatmap-summary article,.heatmap-summary p{margin:0;padding:16px;border-radius:16px;background:var(--panel2)}
.heatmap-summary article{display:grid;gap:4px}
.heatmap-summary article span,.heatmap-summary article small{font-size:12px;color:var(--muted)}
.heatmap-summary article strong{font-size:18px}
.heatmap-summary p{font-size:14px;line-height:1.65;color:var(--muted)}
.broadcast-heatmap{display:block!important;width:max-content}
.heatmap-months{display:grid;grid-template-columns:repeat(12,1fr);padding-left:34px;margin-bottom:8px;min-width:850px}
.heatmap-months span{font-size:12px;color:var(--muted)}
.heatmap-body{display:flex;gap:8px}
.heatmap-weekdays{width:26px;height:108px;display:flex;flex-direction:column;justify-content:space-around;padding:5px 0}
.heatmap-weekdays span{font-size:12px;color:var(--muted)}
.heatmap-cells{display:grid;grid-template-rows:repeat(7,14px);grid-auto-flow:column;grid-auto-columns:14px;gap:4px}
.heatmap-cells .heat-cell,.heatmap-cells .heat-empty{width:14px;height:14px;border-radius:4px}
.heatmap-cells .heat-cell{transition:.15s}
.heatmap-cells .heat-cell:hover{transform:scale(1.35);z-index:2}
@media(max-width:1000px){.schedule-summary-grid{grid-template-columns:repeat(2,1fr)}
.heatmap-summary{grid-template-columns:repeat(3,1fr)}
.heatmap-summary p{grid-column:1/-1}}
@media(max-width:700px){.schedule-summary-grid{grid-template-columns:1fr 1fr;gap:10px}
.schedule-summary-card{min-height:112px;padding:16px}
.schedule-summary-card strong{font-size:21px}
.schedule-today-panel,.schedule-upcoming-panel{padding:18px!important}
.schedule-page-row,.schedule-page-row.featured{grid-template-columns:4px 58px minmax(0,1fr);padding:13px 4px 13px 0}
.schedule-page-date{display:none}
.schedule-page-time b{font-size:16px}
.schedule-page-copy>b{font-size:15px}
.schedule-day-group{grid-template-columns:58px minmax(0,1fr);gap:10px}
.schedule-day-group>header strong{font-size:17px}
.schedule-panel-head{align-items:flex-start}
.schedule-today-date{font-size:12px}
.heatmap-summary{grid-template-columns:1fr 1fr}
.heatmap-summary article:nth-child(3){grid-column:1/-1}
.heatmap-months{min-width:760px}
.heatmap-cells{grid-template-rows:repeat(7,12px);grid-auto-columns:12px}
.heatmap-cells .heat-cell,.heatmap-cells .heat-empty{width:12px;height:12px}}
.sidebar-profile{position:relative;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.sidebar-profile-edit{position:absolute;right:10px;top:10px;width:28px;height:28px;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--muted);cursor:pointer;z-index:2}
.sidebar-live-row{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--muted);border-radius:10px;padding:7px 8px;margin:4px -8px 6px;transition:.2s ease}
.sidebar-live-row i{width:9px;height:9px;border-radius:50%;background:#60ca79;box-shadow:0 0 0 4px rgba(96,202,121,.13)}
.sidebar-live-row b{margin-left:auto;opacity:.55}
body.is-live .sidebar-profile{border-color:rgba(227,48,86,.45);box-shadow:0 14px 34px rgba(183,28,65,.15)}
body.is-live .sidebar-live-row{background:linear-gradient(135deg,#b91f46,#8f1236);color:#fff;box-shadow:0 8px 20px rgba(143,18,54,.24)}
body.is-live .sidebar-live-row i{background:#fff;animation:livePulse 1.7s infinite}
.streamer-profile-modal{width:min(620px,100%)}
.streamer-profile-preview{display:flex;align-items:center;gap:14px;padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--panel2)}
.streamer-profile-preview img{width:76px;height:76px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.streamer-profile-preview div{display:grid;gap:4px}
.streamer-profile-preview small{color:var(--muted)}
.sidebar-nav{position:relative;z-index:5;flex-shrink:0}
.sidebar-profile{position:relative;z-index:1;flex-shrink:0;overflow:visible}
.sidebar-tab{position:relative;z-index:6;pointer-events:auto}
.sidebar-live-row{display:flex!important}
.sidebar-nav,.sidebar-tab,#sidebarMemoButton{pointer-events:auto!important}
.app-sidebar{isolation:isolate}
.sidebar-nav{z-index:20!important}
.sidebar-profile{z-index:1!important;max-height:320px}
.calendar-memo-panel[hidden]{display:none!important}
body.memo-panel-open .calendar-memo-panel:not([hidden]){display:block!important}
:root,[data-theme="dark"]{
  --bg:#070507;--panel:#100c10;--panel2:#151016;--text:#f2dfe4;--muted:#a99299;
  --line:#47202e;--primary:#e32e5c;--primary2:#ff6e91;--danger:#ee315d;
  --shadow:0 22px 60px rgba(0,0,0,.48);
}
html,body{background:#070507;color:var(--text)}
body{background-image:radial-gradient(circle at 12% 18%,rgba(133,12,48,.16),transparent 28%),radial-gradient(circle at 82% 8%,rgba(94,8,34,.13),transparent 24%),linear-gradient(135deg,#080608,#030303 62%,#090409);background-attachment:fixed}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(118deg,transparent 0 24px,rgba(255,255,255,.014) 25px 26px),radial-gradient(circle at 20% 70%,rgba(183,21,63,.22) 0 1px,transparent 2px);background-size:auto,38px 38px;mix-blend-mode:screen}
.app-sidebar{background:linear-gradient(180deg,rgba(12,8,12,.98),rgba(8,6,9,.99));border-right:1px solid #3b1825;box-shadow:18px 0 50px rgba(0,0,0,.28)}
.sidebar-brand{min-height:132px;align-items:center;border-bottom:1px solid #3a1a26}
.sidebar-brand img{width:58px;height:58px;border:1px solid #763044;box-shadow:0 0 0 5px rgba(230,42,90,.06)}
.sidebar-brand>div{gap:5px}
.sidebar-brand span{color:#866e75;letter-spacing:.16em;font-size:12px}
.sidebar-nav{padding:18px 13px}
.sidebar-tab{border-radius:10px;color:#b9a5ab}
.sidebar-tab:hover{background:rgba(227,46,92,.08);color:#f5dfe5}
.sidebar-tab.active{background:linear-gradient(90deg,rgba(188,25,68,.27),rgba(72,11,30,.12));color:#ff9bb3;border:1px solid rgba(226,46,92,.33);box-shadow:inset 3px 0 #e32e5c}
.sidebar-tab span{color:#dc778e}
.sidebar-profile{margin:14px;border:1px solid #47202e;background:linear-gradient(160deg,rgba(24,15,21,.96),rgba(12,9,12,.96));box-shadow:var(--shadow)}
.sidebar-profile-head img{border-color:#713044}
.sidebar-live-row{background:rgba(224,37,84,.08)!important;border-color:#5d2435!important}
.sidebar-live-row i{background:#ef315e;box-shadow:0 0 12px #ef315e}
.sidebar-profile>a{background:#151014;border-color:#35202a;color:#c8b7bc}
.app-topbar{background:rgba(7,5,7,.82);border-bottom:1px solid #351722;backdrop-filter:blur(18px)}
.page-heading span{color:#a23a56}
.page-heading strong{color:#f2dfe4}
.btn{background:#171117;border-color:#45202d;color:#d7c5ca}
.btn.primary{background:linear-gradient(135deg,#d72a55,#9d163b);border-color:#e34267;color:white}
.app-shell{background:transparent}
.panel{background:linear-gradient(145deg,rgba(20,15,20,.96),rgba(11,9,12,.97));border:1px solid #43202c;box-shadow:var(--shadow)}
.gothic-home{max-width:1600px;margin:0 auto;padding:0 8px 54px}
.home-section-head{border-bottom:1px solid #3b1d27;padding-bottom:14px;margin-bottom:12px}
.home-section-head h2{color:#ead9de;font-size:18px}
.home-section-head .eyebrow{color:#d52b56}
.text-btn{color:#a98f97}
.text-btn:hover{color:#ff6e91}
.gothic-profile-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.home-timeline .empty{background:rgba(255,255,255,.02);border-color:#3c202a;color:#8f777f}
.gothic-live-strip{margin:0 18px 12px;border-color:#8f2646;background:linear-gradient(90deg,rgba(141,18,55,.55),rgba(41,8,19,.88))}
@media(max-width:760px){.gothic-home{padding:0 0 32px}
.gothic-live-strip{margin:0 10px 10px}}
:root{--g-bg:#08090c;--g-panel:#0e1015;--g-panel2:#111319;--g-line:#2b2028;--g-red:#e52958;--g-pink:#ff577b}
html[data-theme="light"] body,html[data-theme="dark"] body{background:#08090c!important;color:#f6edf0!important}
html[data-theme="light"]{--bg:#08090c;--panel:#0e1015;--panel2:#111319;--text:#f6edf0;--muted:#a99da2;--line:#2b2028;--primary:#e52958}
.app-sidebar{background:linear-gradient(180deg,#090a0e,#07080b)!important;border-right:1px solid #32202a!important;padding:18px 12px 16px!important}
.sidebar-profile-main{order:0;margin:0 0 14px!important;padding:18px 12px 12px!important;background:linear-gradient(180deg,rgba(229,41,88,.055),rgba(255,255,255,.01))!important;border:1px solid #5b2136!important;border-radius:14px!important}
.sidebar-profile-head{justify-content:center!important;text-align:center!important;flex-direction:column!important;gap:8px!important}
.sidebar-profile-head img{width:78px!important;height:78px!important}
.sidebar-profile-head strong{font-size:19px!important}
.sidebar-profile-head span{font-size:13px!important;color:#968b90!important}
.sidebar-live-row{margin-top:12px!important;border-top:1px solid #2c2529!important;border-bottom:1px solid #2c2529!important;border-radius:0!important;padding:11px 4px!important;background:transparent!important;color:#eee2e6!important}
.sidebar-live-row i{background:#48c770!important;box-shadow:0 0 12px #48c770}
.is-live .sidebar-live-row i{background:#ff315e!important;box-shadow:0 0 14px #ff315e}
.sidebar-profile>a:not(.sidebar-live-row){background:#101116!important;border:1px solid #29242a!important;color:#eee4e8!important;padding:9px 12px!important;margin-top:7px!important;border-radius:8px!important}
.sidebar-nav{order:1;gap:4px!important;margin-top:0!important}
.sidebar-tab{min-height:50px!important;border-radius:9px!important;color:#bdb1b6!important;padding:0 14px!important}
.sidebar-tab.active{background:linear-gradient(90deg,rgba(229,41,88,.22),rgba(229,41,88,.06))!important;border:1px solid #7e2541!important;color:#fff!important;box-shadow:inset 3px 0 #e52958!important}
.sidebar-tab span{color:#ef426b!important;font-size:19px!important}
.sidebar-brand-footer{margin-top:auto;padding:15px 7px 2px;border-top:1px solid #272228;display:grid;gap:3px}
.sidebar-brand-footer strong{font-size:13px;color:#d7cbd0}
.sidebar-brand-footer span{font-size:12px;letter-spacing:.2em;color:#655b60}
.app-topbar{height:68px!important;background:#0b0c10!important;border-bottom:1px solid #272129!important;box-shadow:none!important}
.page-heading span{color:#e52958!important}
.top-actions .btn{background:#101116!important;border-color:#302631!important;color:#ddd1d5!important}
.top-actions .btn.primary{background:#d91e4f!important;color:#fff!important}
.app-shell{background:radial-gradient(circle at 42% 5%,rgba(103,16,39,.11),transparent 30%),#08090c!important;padding:0 26px 40px!important}
.gothic-home{max-width:1260px!important;padding:0 0 34px!important}
.legacy-live-strip{display:none!important}
.home-section-head{margin-bottom:12px!important}
.home-section-head h2{font-size:18px!important}
.home-timeline-row{padding:10px 7px!important;min-height:52px!important}
.home-empty{padding:24px 10px!important}
html[data-theme="light"] .panel{background:linear-gradient(145deg,#101116,#0c0d11)!important;color:#f6edf0!important;border-color:#30242c!important}
html[data-theme="light"] .home-section-head h2,html[data-theme="light"] .home-timeline-row{color:#f6edf0!important}
html[data-theme="light"] .home-empty,html[data-theme="light"] .home-section-head .text-btn{color:#a99da2!important}
@media(max-width:760px){.app-shell{padding:0 0 30px!important}}
:root{
  --light-bg:#f5f2f3;--light-surface:#fffafb;--light-surface-2:#f8f3f5;--light-line:#e5d7dd;
  --light-text:#2b2226;--light-muted:#786a70;--dark-bg:#0a0b0f;--dark-surface:#111217;
  --dark-surface-2:#15161c;--dark-line:#34252d;--dark-text:#f6edf0;--dark-muted:#a99da2;
}
html[data-theme="dark"] body{background:var(--dark-bg)!important;color:var(--dark-text)!important}
html[data-theme="light"] body{background:var(--light-bg)!important;color:var(--light-text)!important}
html[data-theme="dark"] .app-shell{background:linear-gradient(180deg,#0a0b0f 0%,#0d0e13 100%)!important}
html[data-theme="light"] .app-shell{background:linear-gradient(180deg,#f7f3f5 0%,#f1edef 100%)!important}
.home-section-head{padding-bottom:10px!important;margin-bottom:9px!important}
.home-section-head h2{font-size:17px!important}
.home-empty{padding:17px 8px!important}
html[data-theme="dark"] .panel{background:var(--dark-surface)!important;border-color:var(--dark-line)!important;color:var(--dark-text)!important}
html[data-theme="dark"] .home-section-head h2{color:var(--dark-text)!important}
html[data-theme="dark"] .home-empty,html[data-theme="dark"] .text-btn{color:var(--dark-muted)!important}
html[data-theme="light"]{--bg:var(--light-bg);--panel:var(--light-surface);--panel2:var(--light-surface-2);--text:var(--light-text);--muted:var(--light-muted);--line:var(--light-line);--primary:#d52c57}
html[data-theme="light"] .app-sidebar{background:#fffafb!important;border-right-color:#e4d5dc!important}
html[data-theme="light"] .app-topbar{background:rgba(255,250,251,.94)!important;border-bottom-color:#e6d9de!important}
html[data-theme="light"] .sidebar-profile-main{background:#fff7f9!important;border-color:#dfb8c6!important}
html[data-theme="light"] .sidebar-profile-head strong,html[data-theme="light"] .sidebar-brand-footer strong{color:#33252b!important}
html[data-theme="light"] .sidebar-profile-head span,html[data-theme="light"] .sidebar-brand-footer span{color:#8b747d!important}
html[data-theme="light"] .sidebar-profile>a:not(.sidebar-live-row),html[data-theme="light"] .top-actions .btn{background:#fff!important;border-color:#e6d8de!important;color:#4a3840!important}
html[data-theme="light"] .sidebar-live-row{color:#4a3840!important;border-color:#eadde2!important}
html[data-theme="light"] .sidebar-tab{color:#67565e!important}
html[data-theme="light"] .sidebar-tab.active{background:linear-gradient(90deg,#fbe7ed,#fff6f8)!important;border-color:#d96a88!important;color:#8f1f40!important;box-shadow:inset 3px 0 #d92c58!important}
html[data-theme="light"] .panel{background:var(--light-surface)!important;border-color:var(--light-line)!important;color:var(--light-text)!important;box-shadow:0 6px 18px rgba(70,40,51,.045)!important}
html[data-theme="light"] .home-section-head{border-bottom-color:#eadde2!important}
html[data-theme="light"] .home-section-head h2{color:#30242a!important}
html[data-theme="light"] .home-empty,html[data-theme="light"] .home-section-head .text-btn{color:#806e76!important}
body.news-panel-open #page-calendar .schedule-layout{grid-template-columns:320px minmax(0,1fr) 290px!important}
@media(max-width:1150px){body.news-panel-open #page-calendar .schedule-layout{grid-template-columns:1fr!important}}
.sidebar-tab .sidebar-icon{width:23px;height:23px;display:grid;place-items:center;flex:0 0 23px;color:currentColor}
.sidebar-tab .sidebar-icon svg{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.sidebar-tab:hover .sidebar-icon,.sidebar-tab.active .sidebar-icon{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--primary) 52%,transparent))}
.sidebar-tab{gap:14px}
#page-calendar .schedule-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 290px!important;
  grid-template-areas:"calendar side"!important;
  align-items:start!important;
}
#page-calendar .calendar-card{
  grid-area:calendar!important;
  grid-column:auto!important;
  min-width:0!important;
}
#page-calendar .portal-side-right{
  grid-area:side!important;
  grid-column:auto!important;
  min-width:0!important;
}
#page-calendar .calendar-memo-panel{
  grid-column:auto!important;
  min-width:0!important;
}
#page-calendar .calendar-memo-panel[hidden]{
  display:none!important;
}
body.memo-panel-open #page-calendar .schedule-layout{
  grid-template-columns:320px minmax(0,1fr) 290px!important;
  grid-template-areas:"drawer calendar side"!important;
}
body.memo-panel-open #page-calendar .calendar-memo-panel{
  display:block!important;
  grid-area:drawer!important;
}
body.news-panel-open #page-calendar .schedule-layout{
  grid-template-columns:320px minmax(0,1fr) 290px!important;
  grid-template-areas:"drawer calendar side"!important;
}
body:not(.memo-panel-open) #page-calendar .calendar-memo-panel{
  grid-area:auto!important;
}
@media(max-width:1150px){#page-calendar .schedule-layout,body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout{
    grid-template-columns:1fr!important;
    grid-template-areas:"drawer" "calendar" "side"!important;
  }
body:not(.memo-panel-open):not(.news-panel-open) #page-calendar .schedule-layout{
    grid-template-areas:"calendar" "side"!important;
  }}
.v5-drawer-backdrop{position:fixed;inset:0;z-index:78;border:0;background:rgba(5,6,8,.32);backdrop-filter:blur(2px);cursor:default}
.v5-drawer-backdrop[hidden]{display:none!important}
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style]{grid-template-columns:minmax(0,1fr) 290px!important;grid-template-areas:none!important;align-items:start!important}
#calendarMemoDrawer,#calendarNewsDrawer{position:fixed!important;left:270px!important;top:76px!important;bottom:24px!important;width:min(380px,calc(100vw - 300px))!important;z-index:80!important;display:block!important;overflow:auto!important;margin:0!important;transform:translateX(-18px)!important;opacity:0!important;pointer-events:none!important;transition:transform .22s ease,opacity .22s ease!important}
#calendarMemoDrawer[hidden],#calendarNewsDrawer[hidden]{display:block!important;visibility:hidden!important}
body.v5-memo-open #calendarMemoDrawer,body.v5-news-open #calendarNewsDrawer{visibility:visible!important;transform:translateX(0)!important;opacity:1!important;pointer-events:auto!important}
#calendarMemoDrawer .memo-inline-sheet{position:relative!important;top:auto!important;height:100%!important;max-height:none!important;border-radius:20px!important;box-shadow:0 22px 70px rgba(0,0,0,.28)!important}
body.v5-drawer-open{overflow:hidden}
@media(max-width:900px){#calendarMemoDrawer,#calendarNewsDrawer{left:14px!important;right:14px!important;top:70px!important;bottom:14px!important;width:auto!important}
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style]{grid-template-columns:1fr!important}}
.v5-drawer-backdrop{display:none!important;pointer-events:none!important;background:transparent!important;backdrop-filter:none!important}
body.v5-drawer-open{overflow:auto!important}
#calendarMemoDrawer,#calendarNewsDrawer{z-index:65!important;box-shadow:none!important}
#calendarMemoDrawer .memo-inline-sheet{box-shadow:0 18px 48px rgba(0,0,0,.18)!important}
body.v5-drawer-open #page-calendar{filter:none!important;pointer-events:auto!important}
.memo-inline-sheet{display:flex;flex-direction:column;gap:12px;padding:18px!important}
.memo-category-tabs{display:flex;gap:7px;overflow:auto;padding-bottom:4px}
.memo-category-tab{border:1px solid var(--line);background:var(--panel-soft);color:var(--muted);border-radius:999px;padding:7px 11px;font-weight:800;white-space:nowrap}
.memo-category-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}
.memo-card-list{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:10px}
.memo-item-card{border:1px solid var(--line);border-radius:15px;padding:13px 14px;background:var(--panel);box-shadow:0 7px 18px rgba(0,0,0,.05)}
.memo-item-card.tone-yellow{background:color-mix(in srgb,#fff2a8 48%,var(--panel))}
.memo-item-card.tone-green{background:color-mix(in srgb,#cfeab9 46%,var(--panel))}
.memo-item-card.tone-blue{background:color-mix(in srgb,#bfe6fa 45%,var(--panel))}
.memo-item-card.tone-pink{background:color-mix(in srgb,#efc8eb 45%,var(--panel))}
.memo-item-top,.memo-item-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.memo-item-top span{font-size:13px;font-weight:900;color:var(--primary)}
.memo-item-top time{font-size:13px;color:var(--muted)}
.memo-item-card h3{margin:9px 0 7px;font-size:17px}
.memo-item-card p{margin:0;color:var(--text);font-size:14px;line-height:1.65}
.memo-item-foot{margin-top:11px}
.memo-item-foot a{color:var(--primary);font-weight:800;font-size:14px}
.memo-edit-button{border:0;background:transparent;color:var(--muted);font-weight:800}
.memo-admin-actions{display:flex;gap:8px}
.memo-admin-actions .btn{flex:1}
.memo-empty-card{padding:30px 12px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}
.memo-category-manager{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.memo-category-manager>div{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.memo-category-manager button{border:0;background:transparent;color:#d94b68;font-weight:800}
@media(min-width:901px){body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{padding-left:400px;transition:padding-left .22s ease}
#calendarMemoDrawer,#calendarNewsDrawer{left:278px!important;width:370px!important}}
.profile-page{padding-bottom:48px}
.profile-editor-modal{width:min(760px,calc(100vw - 28px))}
.app-sidebar{
  overflow:hidden!important;
  min-height:100dvh!important;
  height:100dvh!important;
}
.sidebar-profile-main{flex:0 0 auto!important;order:0!important}
.sidebar-crew-member{
  width:100%;min-height:45px;display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;
  column-gap:9px;align-items:center;padding:7px 10px;border:1px solid transparent;border-radius:11px;
  background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:.18s ease
}
.sidebar-crew-member>span{grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--primary) 10%,var(--panel));color:var(--primary);font-size:12px;font-weight:900}
.sidebar-crew-member b{align-self:end;font-size:14px;line-height:1.15}
.sidebar-crew-member small{align-self:start;color:var(--muted);font-size:12px;line-height:1.15}
.sidebar-crew-member:hover{background:color-mix(in srgb,var(--primary) 7%,transparent);transform:translateX(2px)}
.sidebar-crew-member.active{border-color:color-mix(in srgb,var(--primary) 48%,var(--line));background:color-mix(in srgb,var(--primary) 11%,var(--panel));box-shadow:inset 3px 0 var(--primary)}
.sidebar-brand-footer{order:2!important;flex:0 0 auto!important;margin-top:0!important;padding:12px 7px 9px!important}
.sidebar-nav{order:3!important;flex:0 0 auto!important;padding:0!important;gap:2px!important}
.sidebar-nav .sidebar-tab{min-height:46px!important}
html[data-theme="light"] .sidebar-crew-member.active{background:#fff0f4}
@media(max-height:850px) and (min-width:901px){.sidebar-profile-main{padding:12px 10px 9px!important;margin-bottom:7px!important}
.sidebar-profile-head img{width:60px!important;height:60px!important}
.sidebar-live-row{margin-top:7px!important;padding:8px 4px!important}
.sidebar-profile>a:not(.sidebar-live-row){padding:7px 10px!important;margin-top:5px!important}
.sidebar-crew-member{min-height:38px;padding:5px 8px}
.sidebar-brand-footer{padding:8px 7px 6px!important}
.sidebar-nav .sidebar-tab{min-height:42px!important}}
#page-profiles{position:relative;min-height:calc(100vh - 84px);overflow:hidden;background:#f5f7f7}
@keyframes jintaCardRise{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
@keyframes jintaDrift{to{transform:translate3d(120px,-60px,0)}}
@keyframes characterReveal{from{opacity:0;transform:translate3d(80px,20px,0) scale(1.035);filter:blur(8px) drop-shadow(0 20px 25px rgba(0,0,0,.18))}to{opacity:1;transform:none}}
@keyframes panelReveal{from{opacity:0;transform:translateX(55px)}to{opacity:1;transform:none}}
@keyframes railReveal{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:none}}
@keyframes switchOutNext{to{opacity:0;transform:translateX(-70px) scale(.985);filter:blur(5px)}}
@keyframes switchOutPrev{to{opacity:0;transform:translateX(70px) scale(.985);filter:blur(5px)}}
@keyframes switchIn{from{opacity:0;transform:translateX(80px) scale(1.02);filter:blur(5px)}to{opacity:1;transform:none}}
#crewProfileModal{z-index:3000!important}
#crewProfileModal.is-open .modal{animation:modalPop .25s ease both}
@keyframes modalPop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@keyframes characterReveal{from{opacity:0;transform:translate3d(calc(50% + 55px),18px,0) scale(1.02);filter:blur(5px) drop-shadow(0 20px 25px rgba(0,0,0,.18))}to{opacity:1;transform:translateX(50%)}}
@keyframes switchOutNext{to{opacity:0;transform:translateX(calc(50% - 55px)) scale(.985);filter:blur(4px)}}
@keyframes switchOutPrev{to{opacity:0;transform:translateX(calc(50% + 55px)) scale(.985);filter:blur(4px)}}
@keyframes switchIn{from{opacity:0;transform:translateX(calc(50% + 55px)) scale(1.015);filter:blur(4px)}to{opacity:1;transform:translateX(50%)}}
.archive-v2-member-card{position:relative;border:0;background:transparent;text-align:left;cursor:pointer;animation:archiveCardIn .5s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay)}
@keyframes archiveCardIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.archive-v2-member-card:hover img{transform:scale(1.04)}
.archive-v2-roster{display:flex;gap:7px;padding:9px;border:1px solid var(--line);background:var(--panel);overflow-x:auto;margin-bottom:16px;scrollbar-width:thin}
.archive-v2-roster-item{flex:0 0 72px;height:66px;position:relative;border:1px solid transparent;background:var(--soft);padding:0;overflow:hidden;cursor:pointer;filter:grayscale(1) brightness(.58);opacity:.58;transition:.25s}
.archive-v2-roster-item img{width:100%;height:100%;object-fit:cover;object-position:center top}
.archive-v2-roster-item span{position:absolute;left:0;right:0;bottom:0;padding:3px;background:rgba(0,0,0,.68);color:#fff;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.archive-v2-roster-item:hover,.archive-v2-roster-item.active{filter:none;opacity:1;border-color:var(--archive-member-color);transform:translateY(-2px)}
@keyframes archiveOutNext{to{opacity:0;transform:translateX(-45px) scale(.985);filter:blur(5px)}}
@keyframes archiveOutPrev{to{opacity:0;transform:translateX(45px) scale(.985);filter:blur(5px)}}
@keyframes archiveIn{from{opacity:0;transform:translateX(55px) scale(1.015);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes archiveInfoIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@media(max-width:620px){.archive-v2-roster-item{flex-basis:58px;height:54px}}
#jintaMemberCount{min-width:58px;text-align:right;color:var(--muted)!important;font-size:14px}
.archive-v2-member-card{min-width:0;color:var(--text)!important;border:0;background:transparent;text-align:left;cursor:pointer;animation:archiveCardIn .55s var(--archive-ease) both;animation-delay:var(--delay)}
.archive-v2-roster{display:flex;gap:9px;margin-bottom:16px;padding:10px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 90%,transparent);overflow-x:auto;box-shadow:0 10px 28px rgba(0,0,0,.05)}
.archive-v2-roster-item{flex:0 0 76px;height:70px;position:relative;overflow:hidden;padding:0;border:1px solid transparent;border-radius:12px;background:var(--panel2);cursor:pointer;filter:grayscale(1) brightness(.62);opacity:.58;transition:.28s var(--archive-ease)}
.archive-v2-roster-item img{width:100%;height:100%;object-fit:cover;object-position:center top}
.archive-v2-roster-item span{position:absolute;left:0;right:0;bottom:0;padding:5px 3px;background:linear-gradient(transparent,rgba(0,0,0,.76));color:#fff!important;font-size:12px;font-weight:800;text-align:center}
.archive-v2-roster-item:hover,.archive-v2-roster-item.active{filter:none;opacity:1;border-color:var(--archive-member-color);transform:translateY(-3px);box-shadow:0 10px 22px color-mix(in srgb,var(--archive-member-color) 20%,transparent)}
#crewProfileModal .modal{border:1px solid var(--line);background:var(--panel);color:var(--text)}
#crewProfileModal .modal h2{color:var(--text)!important}
#crewProfileModal label{color:var(--text)!important}
#crewProfileModal input,#crewProfileModal textarea,#crewProfileModal select{background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
#crewProfileModal input::placeholder,#crewProfileModal textarea::placeholder{color:var(--muted)!important}
html[data-theme="dark"] #crewProfileModal h2,html[data-theme="dark"] #crewProfileModal label{color:#f1f3f6!important}
html[data-theme="dark"] #jintaMemberCount{color:#a0a8b3!important}
html[data-theme="dark"] .archive-v2-roster{background:rgba(24, 34, 49, .94)}
@media(max-width:680px){.archive-v2-roster-item{flex-basis:62px;height:58px}}
\n #page-profiles.archive-single-profile #jintaListView,#page-profiles.archive-single-profile #jintaToolbar,#page-profiles.archive-single-profile #jintaCardGrid,#page-profiles.archive-single-profile #jintaAddMember,#page-profiles.archive-single-profile #jintaRoster{
  display: none !important;
}
html[data-theme="light"] .app-topbar .page-heading span{
  color:#d92d5c!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-theme="light"] .app-topbar .page-heading strong{
  color:#2f2529!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-theme="dark"] .app-topbar .page-heading span{
  color:#ff5d83!important;
  opacity:1!important;
}
html[data-theme="dark"] .app-topbar .page-heading strong{
  color:#fff4f7!important;
  opacity:1!important;
}
body.live-status-unknown .sidebar-live-row i{background:#d39b36!important;box-shadow:0 0 0 4px rgba(211,155,54,.16)!important}
body.live-status-unknown .hero-status-dot{background:#d39b36!important;box-shadow:0 0 0 6px rgba(211,155,54,.12)!important}
body:not(.is-live):not(.live-status-unknown) .sidebar-live-row i{background:#8d98a8!important;box-shadow:0 0 0 4px rgba(141, 152, 168, .14)!important}
body:not(.is-live):not(.live-status-unknown) .hero-status-dot{background:#8d98a8!important;box-shadow:0 0 0 6px rgba(141, 152, 168, .12)!important}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
:root{
  --v8-radius-xl:28px;--v8-radius-lg:22px;--v8-radius-md:16px;
  --v8-border:rgba(92,54,65,.12);--v8-shadow:0 18px 55px rgba(67,36,45,.10);
  --v8-shadow-hover:0 24px 70px rgba(67,36,45,.16);--v8-speed:.28s;
}
html{scroll-behavior:smooth}
body{letter-spacing:-.015em}
button,a,input,select,textarea{transition:border-color var(--v8-speed) ease,background var(--v8-speed) ease,color var(--v8-speed) ease,box-shadow var(--v8-speed) ease,transform var(--v8-speed) ease,opacity var(--v8-speed) ease}
.app-shell{max-width:1740px;margin-inline:auto}
.app-topbar{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.app-page{animation:v8PageIn .36s cubic-bezier(.2,.8,.2,1)}
@keyframes v8PageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.panel,.home-live-strip,.page-section-head{border-color:var(--v8-border)!important;box-shadow:var(--v8-shadow)}
.panel{border-radius:var(--v8-radius-lg)!important}
.panel:hover{box-shadow:var(--v8-shadow-hover)}
.btn,.text-btn,.sidebar-tab{font-weight:750}
.btn{border-radius:14px!important;min-height:42px}
.btn:hover,.text-btn:hover{transform:translateY(-1px)}
.sidebar-tab{border-radius:14px!important}
.sidebar-tab:hover{transform:translateX(3px)}
.sidebar-tab.active{box-shadow:0 10px 28px rgba(236,78,118,.12)}
input,select,textarea{border-radius:13px!important}
input:focus,select:focus,textarea:focus{box-shadow:0 0 0 4px rgba(235,76,116,.10)!important}
.home-section-head h2,.page-section-head h1{letter-spacing:-.04em}
.toast{border-radius:16px!important;box-shadow:0 18px 55px rgba(22,14,18,.22)!important}
.modal{border-radius:26px!important;box-shadow:0 35px 110px rgba(30,17,23,.25)!important}
.modal-layer{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.crew-card{border-radius:20px!important;overflow:hidden;isolation:isolate;box-shadow:0 14px 35px rgba(58,32,41,.12)!important}
.crew-card::after{content:"";position:absolute;inset:-120% 45% auto -70%;height:220%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:transform .65s ease;pointer-events:none;z-index:3}
.crew-card:hover{transform:translateY(-8px) scale(1.015)!important;box-shadow:0 25px 55px rgba(58,32,41,.22)!important}
.crew-card:hover::after{transform:translateX(230%) rotate(24deg)}
.crew-card img{transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.crew-card:hover img{transform:scale(1.045);filter:saturate(1.05) contrast(1.02)}
@keyframes v8Float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.crew-profile-link{border-radius:14px!important}
.crew-profile-link:hover{transform:translateY(-3px)}
@media (max-width:1400px){.app-shell{max-width:none}}
@media (max-width:980px){.app-shell{padding-inline:14px!important}
.page-section-head{border-radius:20px!important}
.panel:hover,.crew-card:hover{transform:none!important}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
[data-theme="dark"]{--v8-border:rgba(255,255,255,.09);--v8-shadow:0 18px 55px rgba(0,0,0,.22);--v8-shadow-hover:0 24px 70px rgba(0,0,0,.34)}
[data-theme="dark"] .crew-card{box-shadow:0 14px 35px rgba(0,0,0,.28)!important}
[data-theme="dark"] .crew-card:hover{box-shadow:0 25px 55px rgba(0,0,0,.42)!important}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
:root{
  --v9-content-max:1520px;
  --v9-gap:20px;
  --v9-focus:0 0 0 4px rgba(235,76,116,.18);
  --v9-ease:cubic-bezier(.22,.8,.25,1);
}
*{box-sizing:border-box}
::selection{background:rgba(235,76,116,.2)}
body{min-width:320px}
.app-topbar{position:sticky;top:0;z-index:80;border-bottom:1px solid var(--v8-border);background:color-mix(in srgb,var(--surface,#fff) 86%,transparent)}
.app-shell{width:min(var(--v9-content-max),calc(100% - 44px));padding-bottom:56px}
.app-sidebar{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(235,76,116,.25) transparent}
.app-sidebar::-webkit-scrollbar{width:6px}
.app-sidebar::-webkit-scrollbar-thumb{background:rgba(235,76,116,.22);border-radius:99px}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:none!important;box-shadow:var(--v9-focus)!important}
button:disabled,.btn:disabled{cursor:not-allowed;opacity:.48;transform:none!important}
.v8-pressed{transform:translateY(1px) scale(.985)!important}
.sidebar-tab,.sidebar-crew-member,.btn,.text-btn{touch-action:manipulation}
.app-page{max-width:100%;min-height:calc(100vh - 110px)}
.page-section-head{margin-bottom:var(--v9-gap)}
.panel{transition:transform .32s var(--v9-ease),box-shadow .32s var(--v9-ease),border-color .32s ease}
.panel:hover{border-color:rgba(235,76,116,.18)!important}
.home-section-head{gap:18px}
.home-section-head .text-btn{white-space:nowrap}
.sidebar-profile-main{position:relative;overflow:hidden}
.sidebar-profile-main::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,#ec4e76,transparent);opacity:.65}
.sidebar-profile-head img{box-shadow:0 10px 28px rgba(40,22,29,.12)}
.sidebar-crew-member{position:relative;overflow:hidden}
.sidebar-crew-member::after{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#ec4e76;transform:scaleY(0);transition:transform .25s var(--v9-ease)}
.sidebar-crew-member.active::after{transform:scaleY(1)}
.sidebar-nav{padding-bottom:12px}
.crew-card{will-change:transform}
.profile-editor-modal{max-height:min(88vh,920px);overflow:auto;overscroll-behavior:contain}
.profile-editor-modal .form-grid{gap:16px}
.profile-editor-modal label{font-weight:700}
.profile-editor-modal .field-helper{display:block;margin-top:7px;line-height:1.55;opacity:.7}
.form-actions{position:sticky;bottom:-1px;padding:14px 0 4px;background:linear-gradient(transparent,var(--surface,#fff) 24%);z-index:4}
.toast{max-width:min(420px,calc(100vw - 32px))}
[data-theme="dark"] .app-topbar{background:rgba(18,13,16,.88)}
[data-theme="dark"] .form-actions{background:linear-gradient(transparent,#171014 24%)}
@media (max-width:1180px){.app-shell{width:calc(100% - 28px)}}
@media (max-width:820px){.app-shell{width:calc(100% - 20px);padding-bottom:32px}
.app-topbar{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.profile-editor-modal{max-height:92vh}}
@media (max-width:520px){.home-section-head{align-items:flex-start;flex-direction:column;gap:8px}}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
html,body{max-width:100%;overflow-x:hidden}
body{overflow-wrap:anywhere}
img,svg,video,canvas{max-width:100%}
.app-shell,.app-page,.page-section-head,.panel{min-width:0}
@media(max-width:1100px){body{padding-left:0!important}
.app-topbar{left:0!important;right:0!important;width:100%!important;max-width:100%!important}
.app-shell{margin-inline:auto!important;max-width:100%!important}}
@media(max-width:760px){:root{--mobile-pad:12px}
html{font-size:16px}
body{width:100%;min-width:320px!important;background:var(--bg)!important}
.app-shell{width:100%!important;margin:0!important;padding:12px var(--mobile-pad) 96px!important}
.app-page{width:100%!important;max-width:100%!important;padding-bottom:28px!important}
.app-topbar{min-height:62px!important;padding:8px 10px!important;gap:8px!important}
.page-heading{min-width:0;overflow:hidden}
.page-heading span{font-size:12px!important}
.page-heading strong{font-size:17px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-actions{gap:6px!important;min-width:0}
.top-actions .btn,.top-actions button{padding:9px 10px!important;font-size:14px!important;white-space:nowrap}
.cloud-status{display:none!important}
.page-section-head{display:block!important;width:100%!important;margin:0 0 14px!important;padding:18px 16px!important;border-radius:18px!important;overflow:hidden}
.page-section-head h1{font-size:26px!important;line-height:1.08!important;margin:5px 0 7px!important}
.page-section-head p{font-size:14px!important;line-height:1.5!important}
#page-stats .stats-grid,#page-stats .stats-highlight-grid,#page-stats .stats-columns{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;gap:12px!important;margin:0 0 12px!important}
#page-stats .stat-card,#page-stats .stats-highlight,#page-stats .stats-columns>.panel,#page-stats .stats-chart-panel,#page-stats .heatmap-panel{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:18px!important;border-radius:18px!important;transform:none!important;overflow:hidden!important}
#page-stats .stat-card{min-height:106px!important}
#page-stats .stat-card strong{font-size:24px!important;line-height:1.15!important}
#page-stats .stat-card span{display:block;margin-top:8px;font-size:14px!important}
#page-stats .stats-highlight{min-height:118px!important}
#page-stats .stats-highlight strong{font-size:22px!important}
#page-stats .stats-columns>.panel h2{font-size:18px!important;margin-top:0!important}
#page-stats .rank-item{grid-template-columns:26px minmax(0,1fr) auto!important;width:100%!important;min-width:0!important}
#page-stats .rank-item span{min-width:0!important}
#page-stats .rank-item strong,#page-stats .rank-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#page-stats .breakdown-row{grid-template-columns:72px minmax(0,1fr) 28px!important;font-size:14px!important}
#page-stats .monthly-hours-chart{width:100%!important;height:240px!important;overflow-x:auto!important;overflow-y:hidden!important;padding-bottom:6px!important}
#page-stats .monthly-hours-chart>*{min-width:620px}
#page-stats .broadcast-heatmap-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
#page-stats .broadcast-heatmap{min-width:760px!important}
#page-stats .stats-section-head{align-items:flex-start!important;gap:10px!important;flex-wrap:wrap!important}
#page-stats .heatmap-summary{grid-template-columns:1fr!important}
#page-stats .heatmap-summary article,#page-stats .heatmap-summary p{grid-column:1!important;width:100%!important}
.stats-columns,.network-layout{grid-template-columns:minmax(0,1fr)!important}
.panel{max-width:100%!important}
.modal-layer{padding:8px!important}
.modal{width:100%!important;max-width:100%!important;padding:18px 14px!important;border-radius:18px!important}
.modal form,.member-form{grid-template-columns:minmax(0,1fr)!important}
.form-actions{flex-wrap:wrap}
.form-actions .btn{flex:1 1 130px}}
@media(max-width:390px){:root{--mobile-pad:9px}
.app-topbar{padding-inline:7px!important}
.top-actions .btn,.top-actions button{padding:8px!important;font-size:13px!important}
.page-section-head{padding:16px 14px!important}
.page-section-head h1{font-size:23px!important}
#page-stats .stat-card,#page-stats .stats-highlight,#page-stats .stats-columns>.panel,#page-stats .stats-chart-panel,#page-stats .heatmap-panel{padding:16px!important}}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
*,*::before,*::after{box-sizing:border-box}
html,body{width:100%;max-width:100%;overflow-x:clip}
body{min-width:320px}
.app-shell,.app-main,.app-content,.page-stage,.app-page,.panel,.stats-grid,.stats-highlight-grid,.stats-columns{min-width:0;max-width:100%}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
#page-profiles.archive-single-profile #jintaListView,#page-profiles.archive-single-profile #jintaAddMember,#page-profiles.archive-single-profile #jintaPrevMember,#page-profiles.archive-single-profile #jintaNextMember{display:none!important}
#page-profiles.archive-single-profile #jintaDetail{display:block!important}
.page-heading span{color:#e52e5f!important;font-weight:800;letter-spacing:.13em}
.page-heading strong{color:var(--text,#2d2528)!important;font-weight:850;text-shadow:none!important}
body.dark .page-heading strong,[data-theme="dark"] .page-heading strong{color:#fff7fa!important}
.app-main,.app-content,.page-stage,.app-page{scroll-behavior:auto!important;overflow-anchor:none}
@media(max-width:760px){html,body{overflow-x:hidden!important}
.app-shell{width:100%!important;max-width:100vw!important;margin:0!important;padding-left:10px!important;padding-right:10px!important}
.app-topbar{width:100%!important;max-width:100vw!important;left:0!important;right:0!important}
.page-stage,.app-content,.app-main,.app-page{width:100%!important;max-width:100%!important;margin-inline:0!important}
#page-stats{width:100%!important;max-width:100%!important;overflow:visible!important}
#page-stats .stats-grid,#page-stats .stats-highlight-grid,#page-stats .stats-columns,#page-stats .heatmap-summary{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;gap:12px!important}
#page-stats .stat-card,#page-stats .stats-highlight,#page-stats .panel,#page-stats .stats-chart-panel,#page-stats .heatmap-panel{width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;transform:none!important}
#page-stats .monthly-hours-chart,#page-stats .broadcast-heatmap-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
#calendarMemoDrawer,#calendarNewsDrawer{width:100%!important;max-width:100vw!important;left:0!important;right:0!important;overflow-x:hidden!important}
#calendarMemoDrawer>*,#calendarNewsDrawer>*{max-width:100%!important;min-width:0!important}}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
@media (min-width: 1401px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - 284px)!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
  }}
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style]{
  display:grid!important;
  grid-template-columns:minmax(900px,1fr) minmax(220px,250px)!important;
  grid-template-areas:"calendar side"!important;
  gap:14px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
}
#page-calendar .calendar-card{
  grid-area:calendar!important;
  width:100%!important;
  min-width:900px!important;
}
#page-calendar .portal-side-right{
  grid-area:side!important;
  width:100%!important;
  min-width:0!important;
}
#calendarMemoDrawer,#calendarNewsDrawer{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-width:0!important;
  margin:0!important;
  z-index:auto!important;
  overflow:visible!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:none!important;
  pointer-events:auto!important;
}
#calendarMemoDrawer[hidden],#calendarNewsDrawer[hidden]{display:none!important;visibility:hidden!important}
#calendarMemoDrawer .memo-inline-sheet{
  position:sticky!important;
  top:92px!important;
  height:calc(100vh - 116px)!important;
  max-height:none!important;
  overflow:hidden!important;
  box-shadow:var(--shadow)!important;
}
body.memo-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout{
  grid-template-columns:minmax(280px,310px) minmax(900px,1fr) minmax(210px,240px)!important;
  grid-template-areas:"drawer calendar side"!important;
  padding-left:0!important;
}
body.news-panel-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
  grid-template-columns:minmax(280px,310px) minmax(900px,1fr) minmax(210px,240px)!important;
  grid-template-areas:"drawer calendar side"!important;
  padding-left:0!important;
}
body.memo-panel-open #calendarMemoDrawer,body.v5-memo-open #calendarMemoDrawer,body.news-panel-open #calendarNewsDrawer,body.v5-news-open #calendarNewsDrawer{
  display:block!important;
  visibility:visible!important;
  grid-area:drawer!important;
}
body.v5-drawer-open{overflow:auto!important}
#page-calendar .calendar-stage{
  overflow-x:auto!important;
  overscroll-behavior-x:contain;
}
#page-calendar .calendar-grid,#page-calendar .weekday-row{
  min-width:980px!important;
}
#page-calendar .day{
  min-width:0!important;
  padding:8px!important;
}
#page-calendar .events{
  min-width:0!important;
  overflow:visible!important;
}
#page-calendar .event-pill{
  min-width:0!important;
  height:auto!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  word-break:keep-all!important;
  overflow-wrap:break-word!important;
  line-height:1.35!important;
  padding-right:30px!important;
}
#page-calendar .event-pill .event-title,#page-calendar .event-pill b,#page-calendar .event-pill > span:not(.event-star):not(.event-memo):not(.range-fill){
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  word-break:keep-all!important;
  overflow-wrap:break-word!important;
  max-width:none!important;
}
#page-calendar .event-pill time{white-space:nowrap!important}
#page-calendar .portal-side-right{gap:12px!important}
#page-calendar .portal-side-right>.panel{padding:14px!important}
@media (min-width: 981px) and (max-width: 1400px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - 280px)!important;
    max-width:none!important;
    margin-left:10px!important;
    margin-right:10px!important;
  }
body.memo-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    grid-template-columns:270px minmax(780px,1fr) 210px!important;
  }
#page-calendar .calendar-card{min-width:780px!important}
#page-calendar .calendar-grid,#page-calendar .weekday-row{min-width:900px!important}}
@media (max-width: 980px){#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"drawer" "calendar" "side"!important;
  }
body:not(.memo-panel-open):not(.news-panel-open):not(.v5-memo-open):not(.v5-news-open) #page-calendar .schedule-layout{
    grid-template-areas:"calendar" "side"!important;
  }
#page-calendar .calendar-card{min-width:0!important}
#calendarMemoDrawer .memo-inline-sheet{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    max-height:520px!important;
  }}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
@media (max-width:1100px){
.app-sidebar{
    height:100dvh;
    max-height:100dvh;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-bottom:calc(36px + env(safe-area-inset-bottom));
    scrollbar-width:thin;
  }
body.sidebar-open{
    overflow:hidden;
    touch-action:none;
  }
body.sidebar-open .app-sidebar{
    touch-action:pan-y;
  }
.mobile-schedule-app{
    min-height:100%;
    overflow:visible!important;
    padding-bottom:calc(52px + env(safe-area-inset-bottom))!important;
  }
#page-calendar,#page-calendar.active,.app-shell,main{
    overflow:visible!important;
  }}
@media (max-width:760px){html,body{
    min-height:100%;
    height:auto!important;
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
.app-sidebar{
    width:min(86vw,390px);
    padding-top:calc(18px + env(safe-area-inset-top));
  }
.sidebar-profile-main,.sidebar-brand-footer,.sidebar-nav{
    flex:0 0 auto;
  }
.sidebar-nav{
    margin-bottom:24px;
  }
.mobile-week-list{
    padding-bottom:calc(36px + env(safe-area-inset-bottom));
  }}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
@media (min-width: 1181px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - 250px)!important;
    max-width:1920px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    display:grid!important;
    grid-template-columns:320px minmax(900px,1fr) 330px!important;
    grid-template-areas:"drawer calendar side"!important;
    gap:18px!important;
    align-items:start!important;
    padding-left:0!important;
    width:100%!important;
  }
#page-calendar .calendar-card{
    grid-area:calendar!important;
    min-width:900px!important;
    width:100%!important;
  }
#page-calendar .portal-side-right{
    grid-area:side!important;
    width:330px!important;
    min-width:330px!important;
  }
#calendarMemoDrawer,#calendarNewsDrawer{
    grid-area:drawer!important;
    position:static!important;
    inset:auto!important;
    width:320px!important;
    min-width:320px!important;
    max-width:320px!important;
    margin:0!important;
    transform:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    overflow:visible!important;
    transition:none!important;
  }
#calendarMemoDrawer[hidden],#calendarNewsDrawer[hidden]{
    display:none!important;
    visibility:hidden!important;
  }
body.memo-panel-open #calendarMemoDrawer,body.v5-memo-open #calendarMemoDrawer,body.news-panel-open #calendarNewsDrawer,body.v5-news-open #calendarNewsDrawer{
    display:block!important;
    visibility:visible!important;
  }
#calendarMemoDrawer .memo-inline-sheet{
    position:sticky!important;
    top:92px!important;
    width:320px!important;
    height:calc(100vh - 116px)!important;
    max-height:none!important;
    overflow:auto!important;
    border-radius:20px!important;
    box-shadow:var(--shadow)!important;
  }
#page-calendar .portal-side-right > .panel{
    padding:18px!important;
  }
#page-calendar .portal-side-right h2,#page-calendar .portal-side-right h3,#page-calendar .portal-side-right strong,#page-calendar .portal-side-right a,#page-calendar .portal-side-right button,#page-calendar .portal-side-right p,#page-calendar .portal-side-right span{
    word-break:keep-all!important;
    overflow-wrap:normal!important;
  }
#page-calendar .section-title{
    gap:12px!important;
    align-items:flex-start!important;
  }
#page-calendar .section-title h2{
    min-width:0!important;
    white-space:normal!important;
    line-height:1.25!important;
  }
#page-calendar .quick-links a,#page-calendar .quick-links button{
    white-space:nowrap!important;
  }
#page-calendar .calendar-stage{
    overflow-x:visible!important;
  }
#page-calendar .calendar-grid,#page-calendar .weekday-row{
    min-width:0!important;
    width:100%!important;
  }}
@media (min-width: 981px) and (max-width: 1180px){#page-calendar{
    overflow-x:auto!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    grid-template-columns:280px 900px 300px!important;
    grid-template-areas:"drawer calendar side"!important;
    width:max-content!important;
    min-width:1516px!important;
    padding-left:0!important;
  }
#page-calendar .calendar-card{grid-area:calendar!important;min-width:900px!important}
#page-calendar .portal-side-right{grid-area:side!important;width:300px!important;min-width:300px!important}
#calendarMemoDrawer,#calendarNewsDrawer{grid-area:drawer!important;position:static!important;inset:auto!important;width:280px!important;min-width:280px!important;transform:none!important;opacity:1!important}
#calendarMemoDrawer[hidden],#calendarNewsDrawer[hidden]{display:none!important}
#calendarMemoDrawer .memo-inline-sheet{position:sticky!important;top:90px!important;width:280px!important;height:calc(100vh - 112px)!important;overflow:auto!important}}
@media (min-width:1200px){.calendar-page,.calendar-container,.schedule-layout{
  grid-template-columns: 320px minmax(980px,1fr) 250px !important;
}}
@media (min-width:1181px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - 260px)!important;
    max-width:none!important;
    margin:0!important;
    padding-left:10px!important;
    padding-right:18px!important;
    box-sizing:border-box!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    grid-template-columns:280px minmax(0,1fr) 300px!important;
    grid-template-areas:"drawer calendar side"!important;
    gap:14px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    align-items:start!important;
  }
#calendarMemoDrawer,#calendarNewsDrawer{
    width:280px!important;
    min-width:280px!important;
    max-width:280px!important;
  }
#calendarMemoDrawer .memo-inline-sheet{
    width:280px!important;
  }
#page-calendar .calendar-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
#page-calendar .portal-side-right{
    width:300px!important;
    min-width:300px!important;
    max-width:300px!important;
  }
#page-calendar .calendar-stage,#page-calendar .calendar-grid,#page-calendar .weekday-row{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }}
@media (min-width:1500px){body:has(#page-calendar.active) .app-shell{
    padding-left:4px!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    grid-template-columns:270px minmax(0,1fr) 292px!important;
    gap:12px!important;
  }
#calendarMemoDrawer,#calendarNewsDrawer,#calendarMemoDrawer .memo-inline-sheet{
    width:270px!important;min-width:270px!important;max-width:270px!important;
  }
#page-calendar .portal-side-right{
    width:292px!important;min-width:292px!important;max-width:292px!important;
  }}
@media (max-width:760px){html{
    min-height:100%!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:auto!important;
  }
body{
    position:static!important;
    min-height:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:auto!important;
  }
body:not(.sidebar-open){
    overflow-y:auto!important;
  }
.app-shell,.app-main,.app-content,.page-stage,#page-calendar,#page-calendar.active{
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
.mobile-schedule-app{
    display:block!important;
    height:auto!important;
    min-height:calc(100svh - 72px)!important;
    max-height:none!important;
    overflow:visible!important;
    padding-bottom:calc(150px + env(safe-area-inset-bottom))!important;
  }
.mobile-week-list{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding-bottom:calc(40px + env(safe-area-inset-bottom))!important;
  }
.mobile-day-card,.mobile-day-events{
    overflow:visible!important;
  }}
:root{
  --text-primary:#1b1d1f;
  --text-secondary:#4b5258;
  --text-muted:#626b72;
  --text-faint:#7b848b;
}
html[data-theme="dark"]{
  --text-primary:#ffffff;
  --text-secondary:#d8dde2;
  --text-muted:#b8c0c7;
  --text-faint:#9ca6ae;
}
.home-event-copy>b,.home-vod-row strong,.home-section-head h2,.schedule-page-copy>b,.mobile-event-copy>b,.day-summary-item b,.event-title,.event-pill b,.memo-card h3,.portal-side-right h2,.portal-side-right h3{
  color:var(--text-primary)!important;
  opacity:1!important;
  text-shadow:none!important;
}
.home-event-copy>small,.home-end-time,.home-vod-row small,.home-date span,.home-empty,.schedule-page-copy small,.mobile-event-copy small,.day-summary-item small,.event-pill time,.detail-meta,.view-head p,.month-control p,.helper,.memo-card small,.portal-side-right p,.portal-side-right small{
  color:var(--text-muted)!important;
  opacity:1!important;
}
.home-empty strong,.home-date strong,.date-num,.weekday-row span{
  color:var(--text-secondary)!important;
  opacity:1!important;
}
html:not([data-theme="dark"]) .home-timeline-row .home-event-copy>b{
  color:#111315!important;
}
html[data-theme="dark"] .home-timeline-row .home-event-copy>b{
  color:#fff!important;
}
html:not([data-theme="dark"]) .home-timeline-row .home-event-copy>small,html:not([data-theme="dark"]) .home-timeline-row .home-end-time{
  color:#555f66!important;
}
html[data-theme="dark"] .home-timeline-row .home-event-copy>small,html[data-theme="dark"] .home-timeline-row .home-end-time{
  color:#c3cbd1!important;
}
.filter{
  background:color-mix(in srgb,var(--filter) 15%,var(--panel))!important;
  border-color:color-mix(in srgb,var(--filter) 72%,var(--line))!important;
  color:color-mix(in srgb,var(--filter) 72%,#111)!important;
  box-shadow:0 2px 8px color-mix(in srgb,var(--filter) 10%,transparent);
}
.filter.active{
  background:color-mix(in srgb,var(--filter) 24%,var(--panel))!important;
  color:color-mix(in srgb,var(--filter) 78%,#080808)!important;
  box-shadow:inset 0 0 0 2px var(--filter),0 3px 10px color-mix(in srgb,var(--filter) 18%,transparent)!important;
}
html[data-theme="dark"] .filter{
  background:color-mix(in srgb,var(--filter) 22%,#0f1520)!important;
  border-color:color-mix(in srgb,var(--filter) 82%,#667284)!important;
  color:color-mix(in srgb,var(--filter) 36%,#fff)!important;
}
html[data-theme="dark"] .filter.active{
  background:color-mix(in srgb,var(--filter) 34%,#0f1520)!important;
  color:#fff!important;
}
.event-pill,.mobile-event-item,.day-summary-item{
  color:var(--text-primary)!important;
}
.event-pill time,.mobile-event-item small,.day-summary-item small{
  color:var(--text-muted)!important;
}
.quick-links a,.quick-links button,.upcoming,.stat-card{
  color:var(--text-primary)!important;
}
.stat-card span,.metric span,.streamer-schedule{
  color:var(--text-muted)!important;
}
@media(max-width:760px){.home-event-copy>b,.mobile-event-copy>b,.schedule-page-copy>b{font-weight:900!important}
.home-event-copy>small,.mobile-event-copy small,.schedule-page-copy small{font-weight:650!important}}
#homeRecentMemoList{display:grid;gap:10px;min-height:76px}
.home-memo-row{position:relative;padding:10px 12px 11px;border:1px solid color-mix(in srgb,var(--accent,#e52e63) 16%,transparent);border-radius:12px;background:color-mix(in srgb,var(--card,#fff) 94%,var(--accent,#e52e63) 6%);overflow:hidden}
.home-memo-row::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent,#e52e63)}
.home-memo-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--text-secondary,#6f6268)}
.home-memo-row h3{margin:0;color:var(--text-primary,#211c1f);font-size:15px;line-height:1.35}
.home-memo-row p{margin:5px 0 0;color:var(--text-secondary,#675d62);font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-memo-empty{padding:18px 4px;color:var(--text-secondary,#766970);font-size:14px}
html[data-theme="dark"] .home-memo-row{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.09)}
html[data-theme="dark"] .home-memo-row h3{color:#fff!important}
html[data-theme="dark"] .home-memo-row p,html[data-theme="dark"] .home-memo-meta,html[data-theme="dark"] .home-memo-empty{color:#c8c0c4!important}
html[data-theme="light"] .home-memo-row h3{color:#1f1b1d!important}
html[data-theme="light"] .home-memo-row p,html[data-theme="light"] .home-memo-meta,html[data-theme="light"] .home-memo-empty{color:#63585d!important}
.sidebar-live-separator{height:18px;margin:5px 12px 4px;border-top:1px solid color-mix(in srgb,var(--line) 78%,transparent)}
.sidebar-live-tab{position:relative;margin-top:0!important}
.sidebar-live-tab em{margin-left:auto;min-width:24px;height:24px;padding:0 7px;display:grid;place-items:center;border-radius:999px;background:#ec365f;color:#fff;font-size:12px;font-style:normal;font-weight:950;box-shadow:0 0 0 4px rgba(236,54,95,.1)}
.app-sidebar{overflow:hidden!important;scrollbar-width:none!important}
.app-sidebar::-webkit-scrollbar{display:none!important}
.sidebar-nav{min-height:0!important}
.live-hub-page{padding-bottom:48px}
.live-hub-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.live-hub-header h1{margin:4px 0 6px;font-size:clamp(36px,5vw,62px);letter-spacing:-.06em}
.live-hub-header p{margin:0;color:var(--muted);font-size:15px}
.live-refresh-btn{min-width:126px}
.live-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.live-overview article{min-height:88px;display:flex;align-items:center;gap:13px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 92%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.05)}
.live-overview small{display:block;color:var(--muted);font-size:13px;font-weight:800;margin-bottom:4px}
.live-overview strong{font-size:21px}
.live-overview-dot{width:12px;height:12px;border-radius:50%;background:#ff315b;box-shadow:0 0 0 7px rgba(255,49,91,.12),0 0 22px rgba(255,49,91,.45);animation:livePulse 1.5s ease-in-out infinite}
@keyframes livePulse{50%{transform:scale(.78);opacity:.68}}
.live-group-tabs{display:flex;gap:7px;padding:6px;margin-bottom:20px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 88%,transparent);width:max-content;max-width:100%;overflow:auto}
.live-group-tabs button{height:40px;padding:0 16px;border:0;border-radius:11px;background:transparent;color:var(--muted);font-weight:900;white-space:nowrap;cursor:pointer}
.live-group-tabs button span{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);font-size:12px}
.live-group-tabs button.active{background:var(--text);color:var(--bg);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.live-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.live-stream-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--panel);color:inherit;text-decoration:none;box-shadow:0 14px 34px rgba(0,0,0,.06);transition:.24s ease}
.live-stream-card:hover{transform:translateY(-5px);border-color:rgba(236,54,95,.38);box-shadow:0 22px 44px rgba(0,0,0,.12)}
.live-stream-card[hidden]{display:none!important}
.live-card-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#28131a,#7c213d)}
.live-card-thumb:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 25%,rgba(255,255,255,.22),transparent 24%),linear-gradient(130deg,transparent 35%,rgba(255,255,255,.09) 35% 38%,transparent 38%)}
.live-card-thumb:after{content:"ON AIR";position:absolute;right:14px;bottom:10px;color:rgba(255,255,255,.18);font-weight:1000;font-size:clamp(28px,4vw,56px);letter-spacing:-.06em}
.is-offline .live-card-thumb{filter:saturate(.25);opacity:.78}
.is-offline .live-card-thumb:after{content:"OFF AIR"}
.live-badge,.offline-badge,.live-viewers{position:absolute;z-index:2;top:12px;border-radius:8px;font-size:12px;font-weight:1000;color:#fff}
.live-badge{left:12px;padding:7px 9px;background:#f12651;box-shadow:0 7px 16px rgba(241,38,81,.28)}
.offline-badge{left:12px;padding:7px 9px;background:rgba(20,20,24,.7)}
.live-viewers{right:12px;padding:7px 9px;background:rgba(10,8,11,.62);backdrop-filter:blur(8px)}
.live-card-body{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:15px 16px 17px}
.live-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#fa6d8f,#a91d49);color:#fff;font-weight:1000;box-shadow:0 8px 18px rgba(196,35,79,.2)}
.live-card-body small{display:block;color:#ec365f;font-size:12px;font-weight:950;margin-bottom:3px}
.live-card-body strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}
.live-card-body p{margin:5px 0 0;color:var(--muted);font-size:13px}
@media(max-width:1050px){.live-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.live-hub-header{align-items:flex-start;flex-direction:column}
.live-overview{grid-template-columns:1fr}
.live-card-grid{grid-template-columns:1fr}
.live-group-tabs{width:100%}
.live-group-tabs button{flex:1}
.sidebar-live-separator{height:10px;margin-top:2px}}
@media(max-height:850px) and (min-width:901px){.sidebar-live-separator{height:8px;margin:2px 10px}
.sidebar-nav .sidebar-tab{min-height:38px!important}
.sidebar-crew-member{min-height:34px!important}
.sidebar-profile-main{padding-top:8px!important;padding-bottom:6px!important}
.sidebar-profile-head img{width:50px!important;height:50px!important}}
.live-status-note{margin:0 0 18px;padding:12px 15px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.035);color:var(--muted);font-size:14px}
.live-stream-card.is-checking{opacity:.86}
.live-member-thumb{position:relative;display:flex;align-items:center;justify-content:center;min-height:145px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.025))}
.live-member-thumb:after{content:attr(data-initial);font-size:36px;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.2)}
.live-open-mark{position:absolute;right:12px;bottom:10px;font-weight:900;color:rgba(255,255,255,.6)}
.live-stream-card:hover .live-open-mark{color:#fff;transform:translate(2px,-2px)}
.live-refresh-btn:disabled{opacity:.55;cursor:wait}
.live-member-thumb .live-thumb-image{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
  z-index:0;background:#f3edef
}
.live-member-thumb:has(.live-thumb-image):before{background:linear-gradient(180deg,rgba(18,5,10,.04),rgba(18,5,10,.2))}
.live-member-thumb:has(.live-thumb-image):after{display:none}
.live-member-thumb .live-badge,.live-member-thumb .offline-badge,.live-member-thumb .live-open-mark{z-index:2}
.live-member-thumb .live-thumb-image[src=""]{display:none}
.live-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.live-stream-card{border-radius:18px;box-shadow:0 10px 26px rgba(0,0,0,.055)}
.live-stream-card:hover{transform:translateY(-4px) scale(1.01)}
.live-card-thumb{aspect-ratio:16/9;isolation:isolate;background:var(--panel2)}
.live-member-thumb{min-height:0}
.live-member-thumb:after{display:none!important}
.live-offline-bg{
  position:absolute;inset:-9%;z-index:0;width:118%;height:118%;
  object-fit:cover;object-position:center;
  filter:blur(22px) saturate(.78) brightness(.62);
  transform:scale(1.08);opacity:.72;transition:transform .35s ease;
}
.live-offline-main{
  position:absolute;inset:0;z-index:1;width:100%;height:100%;
  object-fit:contain;object-position:center;padding:8px;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.28));transition:transform .35s ease,opacity .25s ease;
}
.live-stream-card:hover .live-offline-bg{transform:scale(1.14)}
.live-stream-card:hover .live-offline-main{transform:scale(1.025)}
.live-broadcast-image{transition:opacity .28s ease,transform .35s ease}
.live-stream-card:hover .live-broadcast-image{transform:scale(1.025)}
.is-offline .live-card-thumb,.is-checking .live-card-thumb{filter:none;opacity:1}
.is-offline .live-offline-main{opacity:.9;filter:grayscale(.16) drop-shadow(0 12px 18px rgba(0,0,0,.3))}
.is-offline .live-card-thumb:before,.is-checking .live-card-thumb:before{
  content:"";position:absolute;inset:0;z-index:2;
  background:linear-gradient(180deg,rgba(10,8,10,.04),rgba(10,8,10,.22));pointer-events:none
}
.live-member-thumb .live-badge,.live-member-thumb .offline-badge,.live-member-thumb .live-open-mark{z-index:4}
.live-card-body{grid-template-columns:40px 1fr;gap:10px;padding:12px 13px 14px}
.live-avatar{width:40px;height:40px;border-radius:12px;font-size:14px}
.live-card-body strong{font-size:15px}
.live-card-body p{font-size:13px;margin-top:3px}
@media(max-width:1250px){.live-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.live-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.live-card-grid{grid-template-columns:1fr}}
.is-offline.live-stream-card:hover,.is-checking.live-stream-card:hover{
  transform:none;
}
.is-offline .live-offline-bg,.is-checking .live-offline-bg,.is-offline .live-offline-main,.is-checking .live-offline-main{
  transition:none;
}
.is-offline.live-stream-card:hover .live-offline-bg,.is-checking.live-stream-card:hover .live-offline-bg{
  transform:scale(1.08);
}
.is-offline.live-stream-card:hover .live-offline-main,.is-checking.live-stream-card:hover .live-offline-main{
  transform:none;
}
.app-loader{
  background:
    radial-gradient(circle at 50% 34%,rgba(226,42,91,.14),transparent 26%),
    linear-gradient(145deg,color-mix(in srgb,var(--bg) 96%,white),var(--bg));
}
.app-loader-mascot{
  width:92px;height:92px;display:block;object-fit:cover;border-radius:24px;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}
@keyframes loaderBar{
  0%{transform:translateX(-115%)}
  55%{transform:translateX(75%)}
  100%{transform:translateX(230%)}
}
.is-offline .live-offline-bg,.is-checking .live-offline-bg,.is-offline .live-offline-main,.is-checking .live-offline-main{
  animation:none!important;transition:none!important;
}
.history-month-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:18px}
.history-month-card{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel2);opacity:.62}
.history-month-card.has-data{opacity:1;background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel2) 78%,#f7dce4));box-shadow:0 8px 20px rgba(80,24,41,.05)}
.history-month-card span{font-size:12px;font-weight:900;color:var(--muted)}
.history-month-card strong{font-size:17px}
.history-month-card small{font-size:12px;color:var(--muted);line-height:1.4}
#page-schedule .page-section-head{margin-bottom:18px}
.schedule-summary-card{box-shadow:0 10px 26px rgba(80,24,41,.06)!important}
.schedule-day-group>header{position:sticky;top:86px;align-self:start}
@media(max-width:1000px){.history-month-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.history-month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.schedule-day-group>header{position:static}}
.feed-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:16px}
.activity-item{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;padding:18px 8px;border-bottom:1px solid rgba(138,148,170,.14)}
.activity-item:last-child{border-bottom:0}
.activity-copy h3{font-size:17px;margin:8px 0 5px}
.activity-copy p{margin:0;color:var(--muted,#aab0bd);line-height:1.65;white-space:pre-line}
.activity-copy a{display:inline-block;margin-top:9px;font-size:14px;font-weight:800}
.activity-empty{display:grid;place-items:center;min-height:300px;text-align:center;gap:8px;color:var(--muted,#8d95a5)}
.activity-empty strong{color:inherit;font-size:18px}
@media(max-width:900px){.feed-toolbar{align-items:stretch;flex-direction:column}
.activity-item{grid-template-columns:42px minmax(0,1fr);gap:10px}}
@media(max-width:800px){.feed-toolbar{align-items:stretch;flex-direction:column}}
.soop-collector-box{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px 12px;align-items:center;margin-top:8px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.04)}
.soop-collector-box>div{display:flex;flex-direction:column;gap:3px}
.soop-collector-box strong{font-size:15px}
.soop-collector-box small{color:var(--muted,#8f96a3);line-height:1.45}
.soop-collector-box>#soopCollectorStatus{grid-column:1/-1}
.soop-collector-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:7px;white-space:nowrap}
.soop-collector-toggle input{width:auto!important}
.soop-collector-box #soopCollectorStatus[data-state="ok"]{color:#62d89b}
.soop-collector-box #soopCollectorStatus[data-state="error"]{color:#ff8f9d}
@media(max-width:720px){.soop-collector-box{grid-template-columns:1fr}
.soop-collector-box>#soopCollectorStatus{grid-column:auto}}
.admin-empty{padding:18px;text-align:center;opacity:.6}
.activity-item.compact{display:grid;grid-template-columns:40px 48px 1fr auto auto;align-items:center;gap:14px;min-height:78px;padding:14px 18px}
.activity-avatar img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.activity-time{text-align:right}
.home-vod-row,.home-vod-row:hover,.home-vod-row:focus,.home-vod-row strong,.home-vod-row small{text-decoration:none!important}
.live-card-copy{min-width:0;flex:1}
.live-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}
.live-card-meta span{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:#f7edf3;color:#6f5d68;font-size:14px;font-weight:800;line-height:1}
.live-stream-card.is-live .live-card-meta span{background:rgba(229,37,88,.10);color:#d2194c}
.live-card-meta span+span:before{content:'👁';font-size:13px;margin-right:4px}
.live-card-meta span:first-child:before{content:'◷';font-size:14px;margin-right:4px}
@media(max-width:760px){.live-card-meta{margin-top:7px;gap:5px}
.live-card-meta span{min-height:24px;padding:4px 8px;font-size:13px}}
@media(max-width:760px){#page-live .live-card-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
#page-live .live-stream-card{
    display:block!important;
    overflow:hidden!important;
    border-radius:16px!important;
    background:var(--panel)!important;
    border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line))!important;
    box-shadow:0 10px 24px rgba(44,23,30,.08)!important;
  }
#page-live .live-card-thumb{
    position:relative!important;
    width:100%!important;
    aspect-ratio:16/9!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#ece7e9!important;
  }
#page-live .live-card-thumb img,#page-live .live-thumb-image,#page-live .live-broadcast-image,#page-live .live-offline-main{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center!important;
    filter:none!important;
    transform:none!important;
  }
#page-live .live-offline-bg{display:none!important}
#page-live .live-card-thumb:before,#page-live .live-card-thumb:after{display:none!important}
#page-live .live-card-body{
    position:relative!important;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    align-items:center!important;
    gap:11px!important;
    padding:13px 14px 15px!important;
    background:var(--panel)!important;
  }
#page-live .live-avatar{
    width:44px!important;
    height:44px!important;
    border-radius:12px!important;
  }
#page-live .live-card-copy{min-width:0!important}
#page-live .live-card-body small,#page-live .live-card-body strong,#page-live .live-card-body p{
    position:static!important;
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    transform:none!important;
  }
#page-live .live-card-body small{margin:0 0 2px!important;font-size:12px!important}
#page-live .live-card-body strong{font-size:17px!important;line-height:1.3!important}
#page-live .live-card-body p{margin:4px 0 0!important;font-size:14px!important;color:var(--muted)!important}
#page-live .live-badge,#page-live .offline-badge{
    top:12px!important;
    left:12px!important;
    right:auto!important;
    bottom:auto!important;
    z-index:5!important;
  }
#page-live .live-open-mark{
    right:12px!important;
    bottom:10px!important;
    z-index:5!important;
  }
#page-live .live-card-meta{margin-top:6px!important}}.mobile-nav{
  display: none !important;
}
@media (max-width: 768px){.mobile-nav{
    display: flex !important;
  }}
.live-card.is-offline .live-thumb,.live-card.offline .live-thumb,.live-card[data-live="false"] .live-thumb,.live-card[data-status="offline"] .live-thumb,.live-item.is-offline .live-thumb,.live-item.offline .live-thumb{
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, rgba(244,248,240,.98), rgba(232,241,226,.98)) !important;
}
.live-card.is-offline .live-thumb::before,.live-card.is-offline .live-thumb::after,.live-card.offline .live-thumb::before,.live-card.offline .live-thumb::after,.live-card[data-live="false"] .live-thumb::before,.live-card[data-live="false"] .live-thumb::after,.live-card[data-status="offline"] .live-thumb::before,.live-card[data-status="offline"] .live-thumb::after,.live-item.is-offline .live-thumb::before,.live-item.is-offline .live-thumb::after,.live-item.offline .live-thumb::before,.live-item.offline .live-thumb::after{
  content: none !important;
  display: none !important;
  background-image: none !important;
}
.live-card.is-offline .live-thumb img,.live-card.offline .live-thumb img,.live-card[data-live="false"] .live-thumb img,.live-card[data-status="offline"] .live-thumb img,.live-item.is-offline .live-thumb img,.live-item.offline .live-thumb img{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  filter: none !important;
  opacity: 1 !important;
  transform: none !important;
  background: transparent !important;
}
.live-card.is-offline .live-thumb-bg,.live-card.offline .live-thumb-bg,.live-card[data-status="offline"] .live-thumb-bg,.live-item.is-offline .live-thumb-bg{
  display: none !important;
  background-image: none !important;
}
@media (min-width: 769px){body{
    padding-bottom: 0 !important;
  }.mobile-nav{
    visibility: hidden !important;
    pointer-events: none !important;
  }}
@media (max-width: 680px){#page-profiles .archive-v2-roster{
    margin-bottom: 8px !important;
  }}
@media (max-width: 768px){#page-live{
    padding: 10px 10px 96px !important;
  }
#page-live .live-hub-header{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
    padding: 4px 2px 0 !important;
  }
#page-live .live-hub-header .eyebrow{
    font-size: 8px !important;
  }
#page-live .live-hub-header h2{
    margin: 4px 0 0 !important;
    font-size: 25px !important;
    line-height: 1.05 !important;
  }
#page-live .live-hub-header p{
    display: none !important;
  }
#page-live .live-refresh-btn{
    min-height: 36px !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
  }
#page-live .live-overview{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 0 10px !important;
    padding: 8px 5px !important;
    border: 1px solid var(--line) !important;
    border-radius: 14px !important;
    background: var(--panel) !important;
    box-shadow: 0 8px 20px rgba(42, 24, 31, .06) !important;
  }
#page-live .live-overview article{
    min-width: 0 !important;
    min-height: 48px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 3px 7px !important;
    border: 0 !important;
    border-right: 1px solid var(--line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
  }
#page-live .live-overview article:last-child{
    border-right: 0 !important;
  }
#page-live .live-overview article > div{
    min-width: 0 !important;
  }
#page-live .live-overview small{
    margin: 0 0 2px !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }
#page-live .live-overview strong{
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
  }
#page-live .live-overview-dot{
    flex: 0 0 auto !important;
    width: 7px !important;
    height: 7px !important;
    box-shadow: 0 0 0 3px rgba(255,49,91,.12) !important;
  }
#page-live .live-group-tabs{
    margin: 0 0 9px !important;
    padding: 4px !important;
    border-radius: 12px !important;
  }
#page-live .live-group-tabs button{
    min-height: 34px !important;
    padding: 7px 5px !important;
    border-radius: 9px !important;
    font-size: 11px !important;
  }
#page-live .live-status-note{
    margin: 0 0 10px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
  }
#page-live .live-card-grid{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
#page-live .live-stream-card{
    display: block !important;
    width: 100% !important;
    overflow: hidden !important;
    border-radius: 15px !important;
    background: var(--panel) !important;
    border: 1px solid color-mix(in srgb, var(--primary) 24%, var(--line)) !important;
    box-shadow: 0 8px 18px rgba(42, 24, 31, .07) !important;
  }
#page-live .live-card-thumb,#page-live .live-member-thumb{
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    background: #eee8eb !important;
    filter: none !important;
    opacity: 1 !important;
  }
#page-live .live-card-thumb::before,#page-live .live-card-thumb::after,#page-live .live-member-thumb::before,#page-live .live-member-thumb::after{
    display: none !important;
    content: none !important;
  }
#page-live .live-card-thumb img,#page-live .live-member-thumb img,#page-live .live-thumb-image,#page-live .live-broadcast-image,#page-live .live-offline-main{
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    filter: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
#page-live .live-stream-card.is-offline .live-card-thumb,#page-live .live-stream-card.is-checking .live-card-thumb{
    background: linear-gradient(135deg, #f4f7ef, #e5eee0) !important;
  }
#page-live .live-stream-card.is-offline .live-offline-main,#page-live .live-stream-card.is-checking .live-offline-main{
    object-fit: contain !important;
    object-position: center !important;
    padding: 8px !important;
  }
#page-live .live-offline-bg,#page-live .live-thumb-bg{
    display: none !important;
  }
#page-live .live-card-body{
    position: relative !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 11px 12px 13px !important;
    background: var(--panel) !important;
  }
#page-live .live-avatar{
    width: 42px !important;
    height: 42px !important;
    border-radius: 11px !important;
  }
#page-live .live-card-body small{
    margin: 0 0 1px !important;
    font-size: 9px !important;
  }
#page-live .live-card-body strong{
    font-size: 15px !important;
  }
#page-live .live-card-body p{
    margin: 3px 0 0 !important;
    font-size: 11px !important;
  }
body{
    padding-bottom: 88px !important;
  }}
#page-home.home-v2{padding:20px 0 110px}
.home-v2-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 290px;min-height:270px;margin-bottom:18px;padding:34px 38px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,#fffafb 0%,#fff 55%,#fff0f5 100%);box-shadow:0 18px 44px rgba(56,32,42,.08);overflow:hidden}
.home-v2-hero-copy{position:relative;z-index:2;align-self:center}
.home-v2-hero h1{margin:9px 0 10px;font-family:"Nanum Brush Script","Noto Sans KR",sans-serif;font-size:50px;line-height:.93;color:#d32657;letter-spacing:-.04em}
.home-v2-hero h1 span{display:block}
.home-v2-hero-copy>p{margin:0;color:var(--muted);font-size:16px}
.home-v2-hero .home-date{display:flex;gap:7px;align-items:center;margin-top:22px;color:var(--muted);font-size:13px}
.home-v2-hero .home-date span{font-weight:900;letter-spacing:.16em;color:var(--primary)}
.home-v2-status{position:absolute;top:22px;right:24px;z-index:3;display:flex;align-items:center;gap:10px;min-width:275px;padding:12px 14px;border:1px solid rgba(215,55,91,.28);border-radius:14px;background:rgba(255,255,255,.9);color:var(--text);text-decoration:none;box-shadow:0 10px 24px rgba(50,25,36,.06)}
.home-v2-status>div{min-width:0;flex:1}
.home-v2-status strong,.home-v2-status small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v2-status strong{font-size:14px}
.home-v2-status small{margin-top:3px;font-size:12px;color:var(--muted)}
.home-v2-status>span{font-size:12px;font-weight:900;letter-spacing:.12em;color:var(--primary)}
.home-v2-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:16px}
.home-v2-card{border-radius:22px!important;padding:20px!important;box-shadow:0 13px 30px rgba(47,27,35,.07)!important}
.home-v2-today{grid-column:1}
.home-v2-stats{grid-column:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0!important;overflow:hidden}
.home-v2-stats article{position:relative;min-width:0;padding:24px 14px;text-align:center;border-right:1px solid var(--line)}
.home-v2-stats article:last-of-type{border-right:0}
.home-v2-stats i{display:grid;place-items:center;width:36px;height:36px;margin:0 auto 10px;border-radius:50%;background:#fff0f4;color:var(--primary);font-style:normal;font-weight:900}
.home-v2-stats span,.home-v2-stats strong,.home-v2-stats small{display:block}
.home-v2-stats span{font-size:12px;color:var(--muted)}
.home-v2-stats strong{margin:7px 0 5px;font-size:20px}
.home-v2-stats small{font-size:12px;color:#a6989e}
.home-v2-week{grid-column:1}
.home-v2-vod{grid-column:2}
.home-v2-dday{grid-column:2}
.home-v2-shortcuts{grid-column:1/-1}
.home-v2-upcoming{display:grid;gap:7px}
.home-v2-upcoming-row,.home-v2-next-event{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel);text-align:left;color:var(--text)}
.home-v2-dday-badge{display:grid;place-items:center;min-width:52px;height:38px;border-radius:10px;background:#fff0f4;color:var(--primary);font-size:13px;font-weight:900}
.home-v2-upcoming-row span:nth-child(2) b,.home-v2-upcoming-row span:nth-child(2) small{display:block}
.home-v2-upcoming-row b{font-size:14px}
.home-v2-upcoming-row small{margin-top:4px;color:var(--muted);font-size:12px}
.home-v2-next-event{padding:17px}
.home-v2-next-event>strong{font-size:22px;color:var(--primary)}
.home-v2-next-event span b,.home-v2-next-event span small{display:block}
.home-v2-next-event span small{margin:4px 0;color:var(--muted);font-size:12px}
.home-v2-next-event em{display:inline-block;padding:3px 7px;border-radius:999px;background:#eff7ff;color:#5c7a92;font-size:12px;font-style:normal}
.home-v2-shortcut-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.home-v2-shortcut-grid>*{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);text-decoration:none;text-align:left}
.home-v2-shortcut-grid i{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:#fff0f4;color:var(--primary);font-style:normal}
.home-v2-shortcut-grid span{min-width:0}
.home-v2-shortcut-grid b,.home-v2-shortcut-grid small{display:block}
.home-v2-shortcut-grid b{font-size:13px}
.home-v2-shortcut-grid small{margin-top:3px;color:var(--muted);font-size:12px}
.home-v2 .home-section-head{margin-bottom:13px}
.home-v2 .home-section-head h2{font-size:17px}
.home-v2 .eyebrow{font-size:12px}
.home-v2 .home-vod-row{padding:9px 0}
.home-v2 .home-vod-thumb{width:76px;height:44px;border-radius:8px}
.home-v2 .home-memo-row{padding:10px 0}
@media(max-width:1100px){.home-v2-hero{grid-template-columns:1fr 220px}
.home-v2-status{position:static;grid-column:1/-1;margin-top:18px}
.home-v2-grid{grid-template-columns:1fr}
.home-v2-grid>*{grid-column:1!important}
.home-v2-shortcut-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){#page-home.home-v2{padding:8px 10px 96px}
.home-v2-hero{display:block;min-height:0;margin-bottom:10px;padding:17px 16px;border-radius:18px}
.home-v2-hero h1{font-size:33px}
.home-v2-hero-copy>p{font-size:13px}
.home-v2-status{position:relative;top:auto;right:auto;min-width:0;margin-top:15px;padding:10px;border-radius:12px}
.home-v2-status small{display:none}
.home-v2-hero .home-date{margin-top:12px;font-size:12px}
.home-v2-grid{gap:10px}
.home-v2-card{padding:14px!important;border-radius:16px!important}
.home-v2-stats{grid-template-columns:repeat(4,minmax(0,1fr));padding:0!important}
.home-v2-stats article{padding:13px 4px}
.home-v2-stats i{width:27px;height:27px;margin-bottom:6px}
.home-v2-stats span{font-size:12px}
.home-v2-stats strong{font-size:15px}
.home-v2-stats small{display:none}
.home-v2-shortcut-grid{grid-template-columns:repeat(2,1fr)}
.home-v2-shortcut-grid>*{padding:10px}}
@media(max-width:420px){.home-v2-stats{grid-template-columns:repeat(2,1fr)}
.home-v2-stats article:nth-child(2){border-right:0}
.home-v2-stats article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.home-v2-hero{grid-template-columns:minmax(0,1fr) 300px}
.home-v2-live-media{display:none;min-width:0;overflow:hidden;border-radius:20px}
.home-v2-live-media img{width:100%;height:100%;display:block;object-fit:cover}
.home-v2-hero.is-live{min-height:330px;grid-template-columns:minmax(330px,.72fr) minmax(430px,1.28fr);align-items:stretch;padding:28px}
.home-v2-hero.is-live .home-v2-live-media{display:block!important;grid-column:2;grid-row:1/3;min-height:274px}
.home-v2-hero.is-live .home-v2-status{position:relative;top:auto;right:auto;grid-column:1;align-self:end;min-width:0;margin-top:20px;background:rgba(255,255,255,.94)}
.home-v2-hero:not(.is-live){grid-template-columns:1fr;padding-right:340px;background:
 radial-gradient(circle at 88% 46%,rgba(235,49,94,.10),transparent 20%),
 linear-gradient(135deg,#fffafb,#fff 65%,#fff3f7)}
.home-v2-hero:not(.is-live)::after{content:"OFF AIR";position:absolute;right:44px;bottom:32px;font-size:61px;font-weight:1000;letter-spacing:-.06em;color:rgba(213,38,87,.06)}
.home-v2-hero:not(.is-live) .home-v2-status{top:28px;right:28px}
.home-v2-hero-copy>p{display:none!important}
.home-v2-today{min-height:0}
.home-v2-today .home-timeline{max-height:126px;overflow:auto}
.home-v2-today .home-timeline-row{min-height:54px;padding:8px 10px}
.home-v2-stats{gap:10px;padding:10px!important;background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important}
.home-v2-stats article{border:1px solid var(--line)!important;border-radius:16px!important;background:var(--panel)!important;box-shadow:0 10px 24px rgba(47,27,35,.055)}
.home-v2-stats strong{font-size:18px}
.home-v2-live-members{grid-column:2}
.home-v2-live-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.home-v2-live-member{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);text-decoration:none}
.home-v2-live-member-thumb{position:relative;width:58px;height:58px;border-radius:11px;overflow:hidden;background:#f3e9ed}
.home-v2-live-member-thumb img{width:100%;height:100%;object-fit:cover}
.home-v2-live-member-thumb>b{display:grid;place-items:center;width:100%;height:100%;font-size:18px}
.home-v2-live-member-thumb em{position:absolute;left:4px;top:4px;padding:3px 5px;border-radius:5px;background:#ec315d;color:#fff;font-size:12px;font-style:normal;font-weight:950}
.home-v2-live-member span:last-child{min-width:0}
.home-v2-live-member strong,.home-v2-live-member small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-v2-live-member strong{font-size:14px}
.home-v2-live-member small{margin-top:4px;color:var(--muted);font-size:12px}
.home-v2-shortcut-grid i svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.home-v2-shortcut-grid>*{transition:.18s ease}
.home-v2-shortcut-grid>*:hover{transform:translateY(-2px);border-color:rgba(222,42,88,.30)}
.home-v2-shortcut-grid .is-disabled{opacity:.46;cursor:not-allowed}
@media(max-width:768px){#appSidebar,.app-sidebar{display:none!important;visibility:hidden!important;pointer-events:none!important}
body.sidebar-open{overflow:auto!important;position:static!important}
.app-main,.app-content,.shell,.app-shell{margin-left:0!important;padding-left:0!important;width:100%!important;max-width:100%!important}
#page-live .live-card-body{
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:9px!important;
    padding:9px 10px 10px!important;
  }
#page-live .live-avatar{width:38px!important;height:38px!important;border-radius:10px!important;font-size:13px!important}
#page-live .live-card-copy{min-width:0!important}
#page-live .live-card-copy>small{font-size:12px!important;margin:0!important}
#page-live .live-card-copy>strong{font-size:15px!important;line-height:1.2!important}
#page-live .live-card-copy>p{display:inline!important;margin:0 7px 0 0!important;font-size:12px!important;line-height:1.2!important;color:var(--muted)!important}
#page-live .live-card-meta{display:inline-flex!important;margin:0!important;gap:4px!important;vertical-align:middle!important}
#page-live .live-card-meta span{min-height:20px!important;padding:3px 7px!important;font-size:12px!important;border-radius:999px!important}
#page-live .live-card-meta span:first-child:before{font-size:12px!important;margin-right:3px!important}
#page-live .live-card-body:after{content:"SOOP 바로가기 ↗";grid-column:2;display:inline-block;margin-top:4px;color:var(--primary);font-size:12px;font-weight:900}
#page-live .live-stream-card{min-height:0!important}
#page-live .live-card-thumb{aspect-ratio:16/9!important}
.home-v2-hero:not(.is-live),.home-v2-hero.is-live{display:block!important;min-height:0!important;padding:16px!important}
.home-v2-hero:not(.is-live){padding-right:16px!important}
.home-v2-hero:not(.is-live)::after{right:14px;bottom:14px;font-size:30px}
.home-v2-hero:not(.is-live) .home-v2-status,.home-v2-hero.is-live .home-v2-status{position:relative!important;top:auto!important;right:auto!important;margin-top:12px!important}
.home-v2-hero.is-live .home-v2-live-media{display:block!important;width:100%;height:180px;min-height:0!important;margin-top:12px;border-radius:14px}
.home-v2-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:0!important}
.home-v2-stats article{padding:12px 7px!important;border:1px solid var(--line)!important}
.home-v2-today .home-timeline{max-height:92px}
.home-v2-live-member-grid{grid-template-columns:1fr 1fr}
.home-v2-live-member{grid-template-columns:44px minmax(0,1fr);padding:7px}
.home-v2-live-member-thumb{width:44px;height:44px}}
@media(max-width:420px){.home-v2-live-member-grid{grid-template-columns:1fr}}
.home-v2-grid{
  grid-template-columns:minmax(360px,.82fr) minmax(560px,1.18fr)!important;
}
.home-v2-today{
  min-height:190px!important;
}
.home-v2-today .home-timeline{
  max-height:94px!important;
}
.home-v2-today .home-section-head{
  margin-bottom:8px!important;
}
.home-v2-today .home-timeline-row{
  min-height:48px!important;
  padding:7px 9px!important;
}
.home-v2-stats{
  gap:12px!important;
  padding:0!important;
}
.home-v2-stats article{
  min-height:190px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:20px 12px!important;
}
.home-v2-stats i{
  width:42px!important;
  height:42px!important;
}
.home-v2-stats strong{
  margin:10px 0 7px!important;
  font-size:21px!important;
  line-height:1.22!important;
}
.home-v2-live-members{grid-column:2!important}
.home-v2-live-member-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.home-v2-live-member{
  display:block!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:15px!important;
  background:var(--panel)!important;
  text-align:left!important;
}
.home-v2-live-member-thumb{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/10!important;
  border-radius:0!important;
}
.home-v2-live-member>strong{
  display:block!important;
  padding:10px 11px 11px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:14px!important;
}
.home-v2-live-member-thumb em{
  left:7px!important;
  top:7px!important;
  padding:4px 7px!important;
  font-size:12px!important;
}
#homeRecentVodList{
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr)!important;
  gap:9px 12px!important;
}
#homeRecentVodList .home-vod-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:96px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-height:69px!important;
  padding:8px!important;
  border:1px solid var(--line)!important;
  border-radius:13px!important;
  background:var(--panel)!important;
}
#homeRecentVodList .home-vod-row.is-featured{
  grid-row:1 / span 2!important;
  display:block!important;
  min-height:0!important;
  padding:0 0 12px!important;
  overflow:hidden!important;
}
#homeRecentVodList .home-vod-row.is-featured .home-vod-thumb{
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/8.6!important;
  border-radius:0!important;
}
#homeRecentVodList .home-vod-row.is-featured .home-vod-copy{
  display:block!important;
  padding:11px 12px 0!important;
}
#homeRecentVodList .home-vod-row.is-featured>i{
  position:absolute!important;
  right:12px!important;
  bottom:12px!important;
}
#homeRecentVodList .home-vod-thumb{
  width:96px!important;
  height:54px!important;
  border-radius:9px!important;
}
#homeRecentVodList .home-vod-copy{
  min-width:0!important;
}
#homeRecentVodList .home-vod-copy em{
  display:block!important;
  margin-bottom:4px!important;
  color:var(--primary)!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
}
#homeRecentVodList .home-vod-copy strong{
  font-size:13px!important;
  line-height:1.35!important;
}
#homeRecentVodList .home-vod-copy small{
  margin-top:4px!important;
  font-size:12px!important;
}
#homeRecentVodList .home-vod-row>i{
  color:var(--primary)!important;
  font-size:14px!important;
  font-style:normal!important;
}
#openHomeQuickLinks{
  padding:7px 11px!important;
  border:1px solid rgba(211,38,87,.22)!important;
  border-radius:10px!important;
  background:#fff4f7!important;
  color:var(--primary)!important;
  font-weight:900!important;
}
.streamer-profile-modal form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.streamer-profile-modal form .wide{
  grid-column:1/-1!important;
}
@media(max-width:1100px){.home-v2-grid{
    grid-template-columns:1fr!important;
  }
.home-v2-grid>*{
    grid-column:1!important;
  }
.home-v2-live-member-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }}
@media(max-width:768px){.home-v2-today,.home-v2-stats article{
    min-height:0!important;
  }
.home-v2-live-member-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
#homeRecentVodList{
    grid-template-columns:1fr!important;
  }
#homeRecentVodList .home-vod-row.is-featured{
    grid-row:auto!important;
  }
#homeRecentVodList .home-vod-row.is-featured .home-vod-thumb{
    aspect-ratio:16/9!important;
  }
.streamer-profile-modal form{
    grid-template-columns:1fr!important;
  }}
.home-v2-hero h1{
  font-family: "Nanum Pen Script", "Nanum Brush Script", "Noto Sans KR", sans-serif !important;
  font-size: clamp(54px, 5vw, 82px) !important;
  line-height: 1.08 !important;
  letter-spacing: .015em !important;
  font-weight: 400 !important;
}
.home-v2-hero h1 span{
  display: inline !important;
}
.home-v2-hero h1 span + span{
  margin-left: .22em !important;
}
.home-v2-stats{
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 16px !important;
}
.home-v2-stats article:has(#homeStatVod){
  display: none !important;
}
.home-v2-stats article{
  min-height: 174px !important;
  padding: 24px 18px !important;
}
.home-v2-stats strong{
  font-size: 24px !important;
  line-height: 1.28 !important;
}
.home-v2-grid{
  gap: 20px !important;
}
.home-v2-card{
  padding: 22px !important;
}
.home-v2 .home-section-head{
  margin-bottom: 16px !important;
}
.home-v2-upcoming{
  gap: 10px !important;
}
.home-v2-upcoming-row{
  padding: 14px !important;
}
.home-v2-live-member-grid{
  gap: 15px !important;
}
.home-v2-live-member > strong{
  padding: 12px 13px 14px !important;
}
.home-v2-shortcut-grid{
  gap: 13px !important;
}
.home-v2-shortcut-grid > *{
  padding: 15px !important;
}
#page-live .live-card-body::after,#page-live .live-card-body:after{
  content: none !important;
  display: none !important;
}
#page-live .live-card-actions,#page-live .live-card-action,#page-live .soop-link,#page-live a[href*="sooplive"].live-link,#page-live .live-card-meta a{
  display: none !important;
}
#page-live .live-card-meta{
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  margin-top: 7px !important;
}
#page-live .live-card-meta span{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 4px 9px !important;
  border-radius: 999px !important;
  font-size: 9px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}
#page-live .live-card-meta .live-state-inline,#page-live .live-card-meta span:last-child{
  color: var(--primary) !important;
  background: rgba(239,49,95,.09) !important;
  font-weight: 900 !important;
}
#page-live .live-card-body{
  padding-bottom: 13px !important;
}
@media (min-width: 769px){#page-live .live-card-copy > p{
    min-height: 1.4em !important;
    margin-bottom: 0 !important;
  }}
@media (max-width: 768px){.home-v2-hero h1{
    font-size: 43px !important;
    line-height: 1.08 !important;
  }
.home-v2-hero h1 span{
    display: block !important;
    margin-left: 0 !important;
  }
.home-v2-stats{
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 9px !important;
  }
.home-v2-stats article{
    min-height: 116px !important;
    padding: 13px 8px !important;
  }
.home-v2-card{
    padding: 15px !important;
  }
#page-live .live-card-body{
    padding: 9px 10px 11px !important;
  }
#page-live .live-card-meta{
    gap: 5px !important;
    margin-top: 5px !important;
  }
#page-live .live-card-meta span{
    min-height: 21px !important;
    padding: 3px 7px !important;
    font-size: 8px !important;
  }}
#page-home.home-v2{
  padding-bottom: 72px !important;
}
.home-v2-shortcuts{
  margin-top: 0 !important;
}
.live-card-thumb,.live-member-thumb,.home-v2-live-member-thumb,.home-vod-thumb{
  contain: layout paint !important;
}
.live-card-thumb img,.live-member-thumb img,.home-v2-live-member-thumb img,.home-vod-thumb img{
  background: #f1e9ec;
}
@supports (content-visibility: auto){#page-live .live-stream-card,#page-home .home-v2-card{
    content-visibility: auto;
    contain-intrinsic-size: 300px;
  }
#page-live .live-stream-card{
    contain-intrinsic-size: 360px;
  }}
.sidebar-brand-footer.archive-brand{
  padding:18px 12px!important;
}
.sidebar-brand-footer.archive-brand img{
  display:block;
  width:100%;
  max-width:190px;
  height:auto;
  margin:0 auto;
  object-fit:contain;
}
.home-archive-logo{
  display:block;
  width:min(620px,72%);
  height:auto;
  max-height:150px;
  object-fit:contain;
  object-position:left center;
}
.home-archive-tagline{
  margin:10px 0 0!important;
  color:var(--muted);
  font-size:15px;
}
.home-v2-hero-copy>.eyebrow,.home-v2-hero h1{
  display:none!important;
}
.vod-library-page{
  padding:22px 0 100px;
}

















.vod-library-thumb{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#f1e8ec;
}
.vod-library-thumb img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.vod-library-thumb>b{
  display:grid;place-items:center;width:100%;height:100%;
  color:var(--muted);
}
.vod-library-thumb>em,.vod-library-thumb>i{
  position:absolute;
  top:9px;
  padding:5px 7px;
  border-radius:7px;
  color:#fff;
  font-size:12px;
  font-style:normal;
  font-weight:950;
  box-shadow:0 5px 12px rgba(0,0,0,.16);
}
.vod-library-thumb>em{left:9px;background:var(--primary)}
.vod-library-thumb>i{right:9px;background:rgba(20,20,24,.82)}
.vod-library-copy{
  display:block;
  padding:14px;
}
.vod-library-copy>strong{
  display:-webkit-box;
  min-height:2.8em;
  overflow:hidden;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  font-size:15px;
  line-height:1.4;
}
.vod-library-copy>small{
  display:block;
  margin-top:9px;
  color:var(--muted);
  font-size:12px;
}
.vod-library-copy>span{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}
.vod-library-copy>span i{
  padding:4px 7px;
  border-radius:999px;
  background:#fff1f5;
  color:var(--primary);
  font-size:12px;
  font-style:normal;
  font-weight:850;
}
.vod-library-empty{
  grid-column:1/-1;
  display:grid;
  place-items:center;
  min-height:280px;
  border:1px dashed var(--line);
  border-radius:18px;
  color:var(--muted);
}
.vod-library-empty strong,.vod-library-empty span{display:block;text-align:center}
.vod-pagination{
  display:flex;
  justify-content:center;
  gap:7px;
  margin-top:26px;
}
.vod-pagination button{
  width:40px;height:40px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel);
  color:var(--text);
  font-weight:850;
}
.vod-pagination button.active{
  border-color:var(--primary);
  background:var(--primary);
  color:#fff;
}
.vod-pagination button:disabled{opacity:.35}
@media(max-width:768px){.sidebar-brand-footer.archive-brand{display:none!important}
.home-archive-logo{width:82%;max-height:90px}
.home-archive-tagline{font-size:12px}
.vod-library-page{padding:10px 10px 96px}












.vod-library-thumb{height:100%;min-height:92px;aspect-ratio:auto}
.vod-library-copy{padding:10px}
.vod-library-copy>strong{min-height:0;font-size:14px;-webkit-line-clamp:2}
.vod-library-copy>small{margin-top:5px;font-size:12px}
.vod-library-copy>span{margin-top:6px}
.vod-library-thumb>em,.vod-library-thumb>i{top:6px;padding:3px 5px;font-size:12px}
.vod-library-thumb>em{left:6px}
.vod-library-thumb>i{right:6px}}
#page-vod.app-page{
  display: none !important;
}
#page-vod.app-page.active{
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
#page-vod{
  width: 100% !important;
  min-height: calc(100vh - 110px) !important;
}
.vod-library-empty{
  padding: 30px 18px !important;
}
.vod-library-empty span{
  margin-top: 8px !important;
}
.sidebar-onair-summary{
  margin:10px 10px 12px;
  padding:11px 10px 10px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.sidebar-onair-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.sidebar-onair-head>div span,.sidebar-onair-head>div strong{
  display:block;
}
.sidebar-onair-head>div span{
  margin-bottom:2px;
  color:var(--primary);
  font-size:12px;
  font-weight:950;
  letter-spacing:.15em;
}
.sidebar-onair-head>div strong{
  font-size:13px;
}
.sidebar-onair-head>b{
  display:grid;
  place-items:center;
  min-width:24px;
  height:24px;
  padding:0 7px;
  border-radius:999px;
  background:#ec315d;
  color:#fff;
  font-size:12px;
}
.sidebar-onair-list{
  display:grid;
  gap:3px;
}
.sidebar-onair-list>p{
  margin:8px 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
  text-align:center;
}
.sidebar-onair-member{
  display:grid;
  grid-template-columns:31px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-width:0;
  padding:5px 4px;
  border-radius:8px;
  color:var(--text);
  text-decoration:none;
  transition:background .16s ease;
}
.sidebar-onair-member:hover{
  background:color-mix(in srgb,var(--primary) 7%,transparent);
}
.sidebar-onair-avatar{
  position:relative;
  width:31px;
  height:31px;
  border-radius:8px;
  overflow:visible;
  background:#f4e9ee;
}
.sidebar-onair-avatar img,.sidebar-onair-avatar>b{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  border-radius:8px;
  object-fit:cover;
  overflow:hidden;
  font-size:12px;
}
.sidebar-onair-avatar i{
  position:absolute;
  right:-3px;
  bottom:-2px;
  width:9px;
  height:9px;
  border:2px solid var(--panel);
  border-radius:50%;
  background:#ff315e;
  box-shadow:0 0 0 2px rgba(255,49,94,.10);
}
.sidebar-onair-copy{
  min-width:0;
}
.sidebar-onair-copy strong,.sidebar-onair-copy small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sidebar-onair-copy strong{
  font-size:12px;
}
.sidebar-onair-copy small{
  margin-top:2px;
  color:var(--muted);
  font-size:12px;
}
.sidebar-onair-member>em{
  color:#ec315d;
  font-size:12px;
  font-style:normal;
  font-weight:950;
}
.sidebar-onair-more{
  width:100%;
  min-height:31px;
  margin-top:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--panel);
  color:var(--text);
  font-size:12px;
  font-weight:850;
}
.sidebar-onair-more span{
  color:var(--primary);
  font-size:16px;
  line-height:1;
}
.app-sidebar{
  display:flex!important;
  flex-direction:column!important;
}
.sidebar-nav{
  flex:0 0 auto;
}
.top-live-cluster{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
  order:3;
}
.top-live-cluster .live-toast{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:min(470px,42vw)!important;
  margin:0!important;
  z-index:1!important;
}
.app-topbar .top-actions{
  align-items:center!important;
}
.app-topbar .cloud-status{
  order:1;
}
.app-topbar #themeToggle{
  order:2;
}
.app-topbar .top-live-cluster{
  order:3;
}
.app-topbar #toggleAdmin{
  display:none!important;
}
@media(max-height:900px) and (min-width:901px){.sidebar-onair-summary{
    margin-top:6px;
    margin-bottom:7px;
    padding-top:7px;
    padding-bottom:7px;
  }
.sidebar-onair-member{
    padding-top:3px;
    padding-bottom:3px;
  }
.sidebar-onair-avatar{
    width:27px;
    height:27px;
  }
.sidebar-onair-list{
    gap:1px;
  }
.sidebar-onair-member:nth-child(n+5){
    display:none;
  }}
@media(max-width:768px){.sidebar-onair-summary{
    display:none!important;
  }
.top-live-cluster{
    width:100%;
    order:4;
  }
.top-live-cluster .live-toast{
    flex:1 1 auto;
    width:auto!important;
    min-width:0!important;
  }}
.sidebar-tab[data-page="profiles"] .sidebar-icon svg{
  width:21px;
  height:21px;
}
.sidebar-onair-summary{
  padding:13px 11px 12px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.54),rgba(255,255,255,.18));
}
.sidebar-onair-head{
  margin-bottom:10px!important;
}
.sidebar-onair-head>div span{
  margin-bottom:3px!important;
  color:#df2352!important;
  font-size:12px!important;
  letter-spacing:.14em!important;
}
.sidebar-onair-head>div strong{
  color:var(--text)!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:950!important;
}
.sidebar-onair-head>b{
  min-width:27px!important;
  height:27px!important;
  font-size:12px!important;
}
.sidebar-onair-list{
  gap:4px!important;
}
.sidebar-onair-member{
  grid-template-columns:34px minmax(0,1fr) auto!important;
  min-height:42px!important;
  padding:5px 6px!important;
  background:transparent;
}
.sidebar-onair-member:hover{
  background:rgba(236,49,93,.07)!important;
}
.sidebar-onair-avatar{
  width:34px!important;
  height:34px!important;
}
.sidebar-onair-copy strong{
  color:var(--text)!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:900!important;
}
.sidebar-onair-copy small{
  margin-top:3px!important;
  color:color-mix(in srgb,var(--text) 62%,transparent)!important;
  font-size:12px!important;
  line-height:1.2!important;
}
.sidebar-onair-member>em{
  color:#ec315d!important;
  font-size:12px!important;
  letter-spacing:.03em!important;
}
.sidebar-onair-more{
  min-height:35px!important;
  margin-top:10px!important;
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:950!important;
}
.app-topbar > .top-actions > #toggleAdmin{
  display:none!important;
}
.floating-admin-login{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1600;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-width:142px;
  min-height:46px;
  padding:10px 17px;
  border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));
  border-radius:14px;
  background:rgba(255,250,252,.96);
  color:var(--text);
  box-shadow:0 14px 36px rgba(50,25,36,.18);
  backdrop-filter:blur(16px);
  font-size:14px;
  font-weight:950;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.floating-admin-login:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 42px rgba(50,25,36,.22);
}
.floating-admin-login svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.admin-mode .floating-admin-login{
  border-color:var(--primary);
  background:var(--primary);
  color:#fff;
}
.app-sidebar{
  padding-bottom:10px!important;
}
.sidebar-nav{
  margin-top:0!important;
}
@media(max-height:850px) and (min-width:901px){.sidebar-onair-summary{
    padding-top:9px!important;
    padding-bottom:9px!important;
  }
.sidebar-onair-member{
    min-height:36px!important;
  }
.sidebar-onair-avatar{
    width:29px!important;
    height:29px!important;
  }
.floating-admin-login{
    right:16px;
    bottom:16px;
    min-height:42px;
  }}
@media(max-width:768px){.floating-admin-login{
    display:none!important;
  }}
.sidebar-profile-home{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:inherit;cursor:pointer}
.sidebar-profile-home .sidebar-profile-head{transition:transform .15s ease}
.sidebar-profile-home:hover .sidebar-profile-head{transform:translateY(-1px)}
.sidebar-profile-home:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 25%,transparent);outline-offset:4px;border-radius:14px}
.sidebar-profile-main>a:not(.sidebar-live-row){display:none!important}
.sidebar-profile-main{padding-bottom:12px!important}
.sidebar-profile-main .sidebar-live-row{margin-bottom:0!important}
.sidebar-onair-copy small{
  margin-top:3px!important;
  color:color-mix(in srgb,var(--text) 76%,transparent)!important;
  font-family:"Noto Sans KR","Pretendard","Apple SD Gothic Neo",sans-serif!important;
  font-size:12px!important;font-weight:700!important;line-height:1.35!important;
  letter-spacing:-.01em!important;text-rendering:optimizeLegibility!important;
  -webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important
}
.sidebar-onair-copy strong{
  font-family:"Noto Sans KR","Pretendard","Apple SD Gothic Neo",sans-serif!important;
  font-size:14px!important;font-weight:900!important;line-height:1.25!important;
  letter-spacing:-.02em!important;text-rendering:optimizeLegibility!important;
  -webkit-font-smoothing:antialiased!important
}
.sidebar-onair-member{grid-template-columns:36px minmax(0,1fr) auto!important;min-height:46px!important}
.sidebar-onair-avatar{width:36px!important;height:36px!important}
.sidebar-onair-member>em{font-size:12px!important;font-weight:950!important}
.app-topbar #toggleAdmin{display:none!important}
.floating-admin-login{display:flex!important;pointer-events:auto!important;cursor:pointer!important}
.app-topbar{position:relative!important}
.app-topbar .top-actions{width:100%!important;display:flex!important;align-items:center!important}
.app-topbar .top-live-cluster{flex:1 1 auto!important;display:flex!important;justify-content:flex-end!important}
.app-topbar .top-live-cluster .live-toast{margin-left:auto!important}
.sidebar-onair-avatar img,.sidebar-profile-head img{content-visibility:auto;contain:paint;background:#f2e8ed}
@media(max-width:768px){.sidebar-profile-home{pointer-events:none}
.floating-admin-login{display:none!important}}
.app-loader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 43%,rgba(239,59,102,.11),transparent 30%),
    linear-gradient(180deg,#fffdfd 0%,#fff9fb 100%);
  transition:opacity .34s ease,visibility .34s ease;
}
.app-loader::before,.app-loader::after{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  filter:blur(80px);
  pointer-events:none;
}
.app-loader::before{
  left:12%;
  top:18%;
  background:rgba(255,167,194,.08);
}
.app-loader::after{
  right:10%;
  bottom:12%;
  background:rgba(255,219,229,.13);
}
.app-loader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.archive-loader-shell{
  position:relative;
  z-index:1;
  display:grid;
  justify-items:center;
  width:min(520px,calc(100vw - 36px));
  padding:24px 20px;
  text-align:center;
}
.archive-loader-avatar-wrap{
  position:relative;
  width:142px;
  height:142px;
  display:grid;
  place-items:center;
  margin-bottom:17px;
}
.archive-loader-ring{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  transform:rotate(-90deg);
  filter:drop-shadow(0 8px 20px rgba(233,43,91,.12));
}
.archive-loader-ring-track,.archive-loader-ring-progress{
  fill:none;
  stroke-width:3.5;
}
.archive-loader-ring-track{stroke:rgba(236,49,93,.13)}
.archive-loader-ring-progress{
  stroke:var(--primary,#ec315d);
  stroke-linecap:round;
  transition:stroke-dashoffset .22s ease;
}
.archive-loader-avatar{
  width:118px;
  height:118px;
  border-radius:50%;
  object-fit:cover;
  background:#f6edf1;
  border:5px solid rgba(255,255,255,.96);
  box-shadow:0 16px 34px rgba(55,25,38,.16);
  transition:opacity .18s ease,transform .18s ease;
}
.archive-loader-kicker{
  color:var(--primary,#ec315d);
  font-size:12px;
  font-weight:950;
  letter-spacing:.28em;
}
.archive-loader-title{
  margin-top:8px;
  color:var(--text,#241f21);
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.04em;
}
.archive-loader-status{
  margin-top:9px;
  color:var(--muted,#766c70);
  font-size:14px;
  font-weight:700;
}
.archive-loader-progress-row{
  width:min(390px,82vw);
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px;
  align-items:center;
  gap:12px;
  margin-top:20px;
}
.archive-loader-bar{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(236,49,93,.10);
  box-shadow:inset 0 1px 2px rgba(75,31,47,.06);
}
.archive-loader-bar i{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ec315d,#ff7599);
  box-shadow:0 5px 16px rgba(236,49,93,.22);
  transition:width .22s ease;
}
.archive-loader-progress-row>b{
  color:var(--primary,#ec315d);
  font-size:14px;
  font-variant-numeric:tabular-nums;
}
.archive-loader-thumbs{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  max-width:min(470px,90vw);
  margin-top:22px;
}
.archive-loader-thumbs button{
  width:44px;
  height:44px;
  flex:0 0 44px;
  padding:2px;
  border:2px solid transparent;
  border-radius:50%;
  background:rgba(255,255,255,.82);
  opacity:.48;
  transform:scale(.92);
  overflow:hidden;
  transition:opacity .18s ease,transform .18s ease,border-color .18s ease;
}
.archive-loader-thumbs button.is-active{
  opacity:1;
  transform:scale(1.08);
  border-color:var(--primary,#ec315d);
  box-shadow:0 7px 18px rgba(236,49,93,.16);
}
.archive-loader-thumbs img{
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
}
@media(max-width:620px){.archive-loader-avatar-wrap{width:126px;height:126px}
.archive-loader-avatar{width:104px;height:104px}
.archive-loader-title{font-size:20px}
.archive-loader-thumbs{gap:5px}
.archive-loader-thumbs button{width:36px;height:36px;flex-basis:36px}
.archive-loader-thumbs button:nth-child(n+7){display:none}}
@media(prefers-reduced-motion:reduce){.archive-loader-ring-progress,.archive-loader-bar i,.archive-loader-avatar,.archive-loader-thumbs button{transition:none!important}}
.app-topbar{
  position:sticky!important;
  padding-right:72px!important;
}
.app-topbar .top-actions{
  position:relative!important;
  min-width:0!important;
  padding-right:0!important;
}
.app-topbar .top-live-cluster{
  position:static!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.app-topbar .top-live-cluster .live-toast{
  max-width:min(470px,calc(100vw - 410px))!important;
  margin-right:48px!important;
}
#eventModal #addMemberToEvent,#eventModal .event-member-select-button{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  width:auto!important;
  min-width:112px!important;
  min-height:42px!important;
  margin-top:8px!important;
  padding:9px 14px!important;
  border-radius:12px!important;
  background:var(--text)!important;
  border-color:var(--text)!important;
  color:var(--panel)!important;
  font-weight:900!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  z-index:2!important;
}
#eventModal .member-picker{
  min-height:0!important;
  margin-bottom:2px!important;
}
#eventModal label.wide:has(#memberPicker){
  display:block!important;
  overflow:visible!important;
}
#memberSelectModal{
  z-index:95!important;
}
#memberSelectModal .modal{
  width:min(760px,calc(100vw - 34px))!important;
}
#memberSelectModal .member-select-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(112px,1fr))!important;
  gap:11px!important;
}
@media(max-width:900px){.app-topbar{
    padding-right:58px!important;
  }
.app-topbar .top-live-cluster .live-toast{
    margin-right:42px!important;
    max-width:calc(100vw - 92px)!important;
  }}
@media(max-width:768px){.app-topbar{
    padding-right:52px!important;
  }
#eventModal #addMemberToEvent,#eventModal .event-member-select-button{
    width:100%!important;
  }}
#membersModal{
  z-index:110!important;
}
#membersModal .wide-modal{
  width:min(980px,calc(100vw - 42px))!important;
  max-height:88vh!important;
  overflow:auto!important;
}
[data-theme="dark"] .sidebar-onair-summary{
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01))!important;
  border-color:rgba(255,255,255,.08)!important;
}
[data-theme="dark"] .sidebar-onair-member{
  background:transparent!important;
  color:var(--text)!important;
}
[data-theme="dark"] .sidebar-onair-member:hover{
  background:rgba(255,255,255,.055)!important;
}
[data-theme="dark"] .sidebar-onair-copy strong{
  color:#f7f3f5!important;
}
[data-theme="dark"] .sidebar-onair-copy small{
  color:rgba(247,243,245,.68)!important;
}
[data-theme="dark"] .sidebar-onair-avatar{
  background:#23272b!important;
}
[data-theme="dark"] .sidebar-onair-avatar i{
  border-color:#111418!important;
}
[data-theme="dark"] .sidebar-onair-more{
  background:#171a1e!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#f7f3f5!important;
}
[data-theme="dark"] .sidebar-onair-more:hover{
  background:#1f2429!important;
}
[data-theme="dark"] .sidebar-brand{
  background:transparent!important;
}
[data-theme="dark"] .sidebar-brand img{
  filter:
    brightness(0)
    invert(1)
    drop-shadow(0 2px 8px rgba(255,255,255,.06))!important;
  opacity:.96!important;
}
[data-theme="dark"] .sidebar-brand strong,[data-theme="dark"] .sidebar-brand b,[data-theme="dark"] .sidebar-brand span{
  color:#f7f3f5!important;
}
[data-theme="dark"] .sidebar-brand img[src*="logo"]{
  filter:
    brightness(1.45)
    contrast(1.08)
    saturate(1.15)
    drop-shadow(0 2px 9px rgba(236,49,93,.10))!important;
}
[data-theme="dark"] .home-hero{
  background:
    radial-gradient(circle at 84% 18%,rgba(236,49,93,.13),transparent 34%),
    linear-gradient(135deg,#171a1f 0%,#13161a 58%,#1b171d 100%)!important;
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.28)!important;
}
[data-theme="dark"] .home-hero::before{
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.025),transparent)!important;
}
[data-theme="dark"] .home-hero h1,[data-theme="dark"] .home-hero h2,[data-theme="dark"] .home-hero strong{
  color:#f9f6f8!important;
}
[data-theme="dark"] .home-hero p,[data-theme="dark"] .home-hero small{
  color:rgba(249,246,248,.70)!important;
}
[data-theme="dark"] .home-hero .live-toast{
  background:rgba(17,20,24,.78)!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#f7f3f5!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
}
[data-theme="dark"] .home-hero img{
  filter:
    brightness(1.28)
    contrast(1.06)
    saturate(1.08)
    drop-shadow(0 4px 16px rgba(0,0,0,.18))!important;
}
[data-theme="dark"] .sidebar-onair-summary::before,[data-theme="dark"] .sidebar-onair-summary::after,[data-theme="dark"] .home-hero::after{
  opacity:.22!important;
}
.live-notification-copy{
  display:grid;
  min-width:0;
}
.live-notification-delete{
  position:absolute;
  top:10px;
  right:9px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:8px;
  background:transparent;
  color:var(--muted);
  font-size:18px;
  line-height:1;
  cursor:pointer;
  opacity:.45;
  transition:opacity .16s ease,background .16s ease,color .16s ease;
}.live-notification-delete:focus-visible{
  opacity:1;
}
.live-notification-delete:hover{
  background:rgba(218,45,76,.10);
  color:#d92d4f;
}
[data-theme="dark"] .live-notification-delete:hover{
  background:rgba(255,85,115,.13);
  color:#ff718d;
}
.live-card-body{
  align-items:center!important;
}
.live-card-body .live-avatar.live-profile-avatar{
  width:54px!important;
  height:54px!important;
  flex:0 0 54px!important;
  padding:2px!important;
  overflow:hidden!important;
  border-radius:17px!important;
  background:color-mix(in srgb,var(--primary) 10%,var(--panel))!important;
  border:1px solid color-mix(in srgb,var(--primary) 38%,var(--line))!important;
  box-shadow:0 7px 18px rgba(38,18,25,.10)!important;
}
.live-card-body .live-avatar.live-profile-avatar img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  border-radius:14px!important;
}
.live-card-body .live-avatar.live-profile-avatar b{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#6c2dd4));
}
.live-card-copy{
  min-width:0!important;
}
.live-card-copy>p{
  margin:3px 0 8px!important;
  min-height:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.live-card-status-row{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  margin-top:0!important;
}
.live-card-status-row span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  font-size:13px!important;
  font-weight:850!important;
}
.live-card-status-row .live-duration{
  color:var(--primary)!important;
  background:color-mix(in srgb,var(--primary) 9%,transparent)!important;
}
.live-card-status-row .live-now-status{
  color:#ef315d!important;
  background:rgba(239,49,93,.10)!important;
}
.live-stream-card.is-live .live-card-copy::after{
  display:none!important;
}
[data-theme="dark"] .live-card-body .live-avatar.live-profile-avatar{
  background:#1d2227!important;
  border-color:rgba(255,255,255,.11)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.25)!important;
}
[data-theme="dark"] .live-card-status-row .live-duration{
  background:rgba(255,255,255,.06)!important;
  color:#f4c7d2!important;
}
[data-theme="dark"] .live-card-status-row .live-now-status{
  background:rgba(239,49,93,.15)!important;
  color:#ff7897!important;
}
@media(max-width:620px){.live-card-body .live-avatar.live-profile-avatar{
    width:48px!important;
    height:48px!important;
    flex-basis:48px!important;
    border-radius:15px!important;
  }
.live-card-body .live-avatar.live-profile-avatar img,.live-card-body .live-avatar.live-profile-avatar b{
    border-radius:12px!important;
  }
.live-card-status-row{
    gap:5px!important;
  }
.live-card-status-row span{
    padding:4px 7px!important;
    font-size:12px!important;
  }}
.live-stream-card .live-now-status,.live-stream-card [class*="soop-shortcut"],.live-stream-card [class*="live-shortcut"]{
  display:none!important;
}
.live-stream-card .live-card-body{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:14px!important;
  min-height:118px!important;
  padding:16px 18px!important;
  overflow:hidden!important;
}
.live-stream-card .live-profile-avatar{
  grid-column:1!important;
  position:relative!important;
  inset:auto!important;
  margin:0!important;
  align-self:center!important;
  justify-self:start!important;
  z-index:1!important;
}
.live-stream-card .live-card-copy{
  grid-column:2!important;
  min-width:0!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}
.live-stream-card .live-card-copy>small,.live-stream-card .live-card-copy>strong,.live-stream-card .live-card-copy>p{
  display:block!important;
  max-width:100%!important;
}
.live-stream-card .live-card-copy>strong{
  margin-top:2px!important;
  line-height:1.22!important;
}
.live-stream-card .live-card-copy>p{
  margin:5px 0 8px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.live-stream-card .live-card-status-row{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  margin:0!important;
}
.live-stream-card .live-card-status-row .live-duration{
  margin:0!important;
}
.live-stream-card .live-card-actions,.live-stream-card .live-card-footer,.live-stream-card .live-action-row{
  display:none!important;
}
.live-stream-card .live-profile-avatar,.live-stream-card .live-profile-avatar img,.live-stream-card .live-profile-avatar b{
  box-sizing:border-box!important;
}
.live-stream-card .live-profile-avatar img{
  position:static!important;
  inset:auto!important;
  max-width:100%!important;
  max-height:100%!important;
}
@media(min-width:900px){.live-card-grid{
    align-items:stretch!important;
  }
.live-stream-card .live-card-body{
    min-height:126px!important;
  }}
@media(max-width:620px){.live-stream-card .live-card-body{
    grid-template-columns:46px minmax(0,1fr)!important;
    column-gap:11px!important;
    min-height:104px!important;
    padding:13px 14px!important;
  }
.live-stream-card .live-card-copy>p{
    margin-bottom:6px!important;
  }}
.live-card-status-row .live-stale-status{
  display:inline-flex!important;
  align-items:center!important;
  min-height:25px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:rgba(255,170,0,.12)!important;
  color:#b56e00!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.admin-mode .live-stream-card.is-checking[data-live-group]{
  border-style:dashed!important;
}
[data-theme="dark"] .live-card-status-row .live-stale-status{
  background:rgba(255,190,70,.13)!important;
  color:#ffd17a!important;
}
.live-hub-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.live-member-manager-modal{width:min(960px,calc(100vw - 40px))!important;max-height:88vh;overflow:auto}
.live-member-manager-form{display:grid;grid-template-columns:1fr 1fr .75fr 1.25fr;gap:10px;align-items:end;padding:16px;margin:16px 0;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.live-member-manager-form label{display:grid;gap:6px}
.live-member-manager-form label>span{color:var(--muted);font-size:13px;font-weight:900}
.live-member-manager-form-actions,.live-member-admin-actions{display:flex;gap:7px}
.live-member-manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:5px 0 10px}
.live-member-manager-list{display:grid;gap:8px}
.live-member-admin-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.live-member-admin-avatar{width:46px;height:46px;display:grid;place-items:center;overflow:hidden;border-radius:14px;background:color-mix(in srgb,var(--primary) 10%,var(--panel));color:var(--primary);font-weight:950}
.live-member-admin-avatar img{width:100%;height:100%;object-fit:cover}
.live-member-admin-copy{display:grid;min-width:0;gap:2px}
.live-member-admin-copy small,.live-member-admin-copy span{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}
[data-theme="dark"] .live-member-manager-form,[data-theme="dark"] .live-member-admin-row{background:#15191d;border-color:rgba(255,255,255,.09)}
@media(max-width:900px){.live-member-manager-form{grid-template-columns:1fr 1fr}
.live-member-manager-form-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:620px){.live-hub-actions{width:100%;justify-content:flex-start}
.live-member-manager-form{grid-template-columns:1fr}
.live-member-manager-form-actions{grid-column:auto}
.live-member-admin-row{grid-template-columns:44px minmax(0,1fr)}
.live-member-admin-actions{grid-column:1/-1;justify-content:flex-end}}
body.modal-open{overflow:hidden}
#view-live,.live-hub-page,.live-hub-shell{
  min-height:0!important;
}
.live-hub-header{
  margin-bottom:10px!important;
  padding:12px 14px!important;
}
.live-hub-summary,.live-status-summary,.live-status-panel{
  min-height:0!important;
  margin:8px 0 12px!important;
  padding:12px 16px!important;
}
#liveCardGrid,.live-card-grid{
  align-items:start!important;
  align-content:start!important;
  grid-auto-rows:auto!important;
  gap:12px!important;
  margin-top:10px!important;
  padding-bottom:8px!important;
}
.live-stream-card{
  align-self:start!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  overflow:hidden!important;
}
.live-card-thumb{
  height:120px!important;
  min-height:120px!important;
  max-height:120px!important;
}
.live-card-body{
  min-height:0!important;
  padding:10px 12px 11px!important;
  gap:10px!important;
  align-items:center!important;
}
.live-profile-avatar,.live-avatar{
  width:46px!important;
  min-width:46px!important;
  height:46px!important;
}
.live-card-copy{
  min-width:0!important;
  gap:2px!important;
}
.live-card-copy small{
  margin:0!important;
  font-size:12px!important;
  line-height:1.2!important;
}
.live-card-copy strong{
  margin:0!important;
  font-size:16px!important;
  line-height:1.25!important;
}
.live-card-copy p{
  min-height:0!important;
  margin:2px 0 0!important;
  line-height:1.35!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.live-card-meta,.live-card-status-row{
  min-height:0!important;
  margin-top:6px!important;
  gap:5px!important;
}
.live-duration,.live-stale-status{
  min-height:22px!important;
  padding:3px 7px!important;
}
.live-member-manager-modal{
  display:block!important;
  width:min(980px,calc(100vw - 32px))!important;
  max-height:88vh!important;
  margin:auto!important;
  padding:22px!important;
  background:var(--panel)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.28)!important;
}
#liveMemberManagerModal.is-open{
  display:grid!important;
}
@media(max-width:700px){.live-card-thumb{
    height:105px!important;
    min-height:105px!important;
    max-height:105px!important;
  }
.live-card-body{
    padding:9px 10px 10px!important;
  }}
#page-live .live-card-thumb,#view-live .live-card-thumb,.live-hub-page .live-card-thumb{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:16/9!important;
}
#page-live .live-card-thumb img,#view-live .live-card-thumb img,.live-hub-page .live-card-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
#page-live .live-stream-card .live-card-body,#view-live .live-stream-card .live-card-body,.live-hub-page .live-stream-card .live-card-body{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  column-gap:10px!important;
  align-items:center!important;
  min-height:76px!important;
  height:auto!important;
  padding:9px 11px 10px!important;
}
#page-live .live-stream-card .live-profile-avatar,#view-live .live-stream-card .live-profile-avatar,.live-hub-page .live-stream-card .live-profile-avatar{
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  flex-basis:42px!important;
  padding:2px!important;
  border-radius:13px!important;
}
#page-live .live-stream-card .live-profile-avatar img,#page-live .live-stream-card .live-profile-avatar b,#view-live .live-stream-card .live-profile-avatar img,#view-live .live-stream-card .live-profile-avatar b,.live-hub-page .live-stream-card .live-profile-avatar img,.live-hub-page .live-stream-card .live-profile-avatar b{
  border-radius:10px!important;
}
#page-live .live-stream-card .live-card-copy,#view-live .live-stream-card .live-card-copy,.live-hub-page .live-stream-card .live-card-copy{
  display:block!important;
  min-width:0!important;
}
#page-live .live-stream-card .live-card-copy>small,#view-live .live-stream-card .live-card-copy>small,.live-hub-page .live-stream-card .live-card-copy>small{
  margin:0 0 1px!important;
  font-size:12px!important;
  line-height:1.1!important;
  font-weight:850!important;
}
#page-live .live-stream-card .live-card-copy>strong,#view-live .live-stream-card .live-card-copy>strong,.live-hub-page .live-stream-card .live-card-copy>strong{
  margin:0!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:900!important;
}
#page-live .live-stream-card .live-card-copy>p,#view-live .live-stream-card .live-card-copy>p,.live-hub-page .live-stream-card .live-card-copy>p{
  margin:2px 0 4px!important;
  min-height:0!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#page-live .live-stream-card .live-card-status-row,#view-live .live-stream-card .live-card-status-row,.live-hub-page .live-stream-card .live-card-status-row{
  display:flex!important;
  align-items:center!important;
  min-height:0!important;
  margin:0!important;
  gap:4px!important;
}
#page-live .live-stream-card .live-duration,#page-live .live-stream-card .live-stale-status,#view-live .live-stream-card .live-duration,#view-live .live-stream-card .live-stale-status,.live-hub-page .live-stream-card .live-duration,.live-hub-page .live-stream-card .live-stale-status{
  min-height:18px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1!important;
}
#page-live .live-stream-card .live-now-status,#page-live .live-stream-card .live-card-actions,#page-live .live-stream-card .live-card-footer,#page-live .live-stream-card .live-action-row,#view-live .live-stream-card .live-now-status,#view-live .live-stream-card .live-card-actions,#view-live .live-stream-card .live-card-footer,#view-live .live-stream-card .live-action-row,.live-hub-page .live-stream-card .live-now-status,.live-hub-page .live-stream-card .live-card-actions,.live-hub-page .live-stream-card .live-card-footer,.live-hub-page .live-stream-card .live-action-row{
  display:none!important;
}
@media(max-width:700px){#page-live .live-stream-card .live-card-body,#view-live .live-stream-card .live-card-body,.live-hub-page .live-stream-card .live-card-body{
    grid-template-columns:38px minmax(0,1fr)!important;
    min-height:68px!important;
    column-gap:8px!important;
    padding:8px 9px!important;
  }
#page-live .live-stream-card .live-profile-avatar,#view-live .live-stream-card .live-profile-avatar,.live-hub-page .live-stream-card .live-profile-avatar{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    flex-basis:38px!important;
  }
#page-live .live-stream-card .live-card-copy>strong,#view-live .live-stream-card .live-card-copy>strong,.live-hub-page .live-stream-card .live-card-copy>strong{
    font-size:14px!important;
  }}
#page-live #liveCardGrid,#view-live #liveCardGrid,.live-hub-page #liveCardGrid,#page-live .live-card-grid,#view-live .live-card-grid,.live-hub-page .live-card-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
}
#page-live .live-stream-card,#view-live .live-stream-card,.live-hub-page .live-stream-card{
  min-width:0!important;
  height:auto!important;
  border:1px solid color-mix(in srgb,var(--line) 88%,transparent)!important;
  border-radius:5px!important;
  overflow:hidden!important;
  background:var(--panel)!important;
  box-shadow:none!important;
  transition:border-color .16s ease,transform .16s ease!important;
}
#page-live .live-stream-card:hover,#view-live .live-stream-card:hover,.live-hub-page .live-stream-card:hover{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--primary) 60%,var(--line))!important;
}
#page-live .live-card-thumb,#view-live .live-card-thumb,.live-hub-page .live-card-thumb{
  width:100%!important;
  aspect-ratio:16/9!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  border-radius:0!important;
  background:#111827!important;
}
#page-live .live-card-thumb img,#view-live .live-card-thumb img,.live-hub-page .live-card-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
#page-live .live-stream-card .live-card-body,#view-live .live-stream-card .live-card-body,.live-hub-page .live-stream-card .live-card-body{
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:8px!important;
  min-height:52px!important;
  padding:7px 9px!important;
  background:var(--panel)!important;
}
#page-live .live-stream-card .live-profile-avatar,#view-live .live-stream-card .live-profile-avatar,.live-hub-page .live-stream-card .live-profile-avatar{
  width:32px!important;
  min-width:32px!important;
  height:32px!important;
  flex-basis:32px!important;
  padding:1px!important;
  border-radius:3px!important;
  border:1px solid var(--line)!important;
  box-shadow:none!important;
}
#page-live .live-profile-avatar img,#page-live .live-profile-avatar b,#view-live .live-profile-avatar img,#view-live .live-profile-avatar b,.live-hub-page .live-profile-avatar img,.live-hub-page .live-profile-avatar b{
  border-radius:2px!important;
}
#page-live .live-card-copy,#view-live .live-card-copy,.live-hub-page .live-card-copy{
  min-width:0!important;
  display:block!important;
}
#page-live .live-card-name-row,#view-live .live-card-name-row,.live-hub-page .live-card-name-row{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  gap:6px!important;
}
#page-live .live-card-name-row strong,#view-live .live-card-name-row strong,.live-hub-page .live-card-name-row strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:850!important;
  color:var(--text)!important;
}
#page-live .live-card-inline-time,#view-live .live-card-inline-time,.live-hub-page .live-card-inline-time{
  flex:0 0 auto!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
#page-live .live-card-copy p,#view-live .live-card-copy p,.live-hub-page .live-card-copy p{
  display:block!important;
  min-height:0!important;
  margin:3px 0 0!important;
  overflow:hidden!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1.2!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
#page-live .live-card-thumb .live-badge,#view-live .live-card-thumb .live-badge,.live-hub-page .live-card-thumb .live-badge{
  top:7px!important;
  left:7px!important;
  min-height:21px!important;
  padding:3px 7px!important;
  border-radius:4px!important;
  font-size:12px!important;
  line-height:1!important;
  box-shadow:none!important;
}
#page-live .live-open-mark,#view-live .live-open-mark,.live-hub-page .live-open-mark{
  right:7px!important;
  bottom:7px!important;
  font-size:14px!important;
  opacity:.75!important;
}
#page-live .live-card-copy>small,#page-live .live-card-meta,#page-live .live-card-status-row,#page-live .live-duration,#page-live .live-stale-status,#view-live .live-card-copy>small,#view-live .live-card-meta,#view-live .live-card-status-row,#view-live .live-duration,#view-live .live-stale-status,.live-hub-page .live-card-copy>small,.live-hub-page .live-card-meta,.live-hub-page .live-card-status-row,.live-hub-page .live-duration,.live-hub-page .live-stale-status{
  display:none!important;
}
#page-live .live-stream-card.is-offline .live-card-thumb img,#view-live .live-stream-card.is-offline .live-card-thumb img,.live-hub-page .live-stream-card.is-offline .live-card-thumb img{
  filter:saturate(.35) brightness(.62)!important;
}
#page-live .live-stream-card.is-checking,#view-live .live-stream-card.is-checking,.live-hub-page .live-stream-card.is-checking{
  opacity:.78!important;
}
[data-theme="dark"] #page-live .live-stream-card,[data-theme="dark"] #view-live .live-stream-card,[data-theme="dark"] .live-hub-page .live-stream-card{
  background:#0f1421!important;
  border-color:#273148!important;
}
[data-theme="dark"] #page-live .live-stream-card .live-card-body,[data-theme="dark"] #view-live .live-stream-card .live-card-body,[data-theme="dark"] .live-hub-page .live-stream-card .live-card-body{
  background:#0f1421!important;
}
@media(max-width:1200px){#page-live #liveCardGrid,#view-live #liveCardGrid,.live-hub-page #liveCardGrid,#page-live .live-card-grid,#view-live .live-card-grid,.live-hub-page .live-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }}
@media(max-width:820px){#page-live #liveCardGrid,#view-live #liveCardGrid,.live-hub-page #liveCardGrid,#page-live .live-card-grid,#view-live .live-card-grid,.live-hub-page .live-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }}
@media(max-width:520px){#page-live #liveCardGrid,#view-live #liveCardGrid,.live-hub-page #liveCardGrid,#page-live .live-card-grid,#view-live .live-card-grid,.live-hub-page .live-card-grid{
    grid-template-columns:1fr!important;
  }}
.floating-member-db{
  right:22px!important;
  bottom:80px!important;
  z-index:1599!important;
  display:none!important;
}
body.admin-mode .floating-member-db{
  display:flex!important;
  border-color:var(--primary)!important;
  background:var(--primary)!important;
  color:#fff!important;
}
.floating-member-db svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
@media(max-height:850px) and (min-width:901px){.floating-member-db{
    right:16px!important;
    bottom:72px!important;
  }}
@media(max-width:900px){.floating-member-db{
    right:14px!important;
    bottom:calc(78px + env(safe-area-inset-bottom))!important;
    min-width:128px!important;
    min-height:42px!important;
    padding:9px 14px!important;
  }}
.poster-archive-page{
  max-width:1460px;
  margin:0 auto;
  padding:26px 28px 70px;
}
.poster-archive-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:20px;
}
.poster-archive-header h2{margin:5px 0 8px;font-size:26px}
.poster-archive-header p{margin:0;color:var(--muted);font-size:15px}
.poster-filter-tabs{
  display:flex;
  width:max-content;
  gap:5px;
  margin-bottom:18px;
  padding:5px;
  border:1px solid var(--line);
  border-radius:9px;
  background:var(--panel);
}
.poster-filter-tabs button{
  border:0;
  border-radius:6px;
  padding:9px 18px;
  background:transparent;
  color:var(--muted);
  font-weight:800;
  cursor:pointer;
}
.poster-filter-tabs button.active{
  background:var(--text);
  color:var(--panel);
}
.poster-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:start;
}
.poster-archive-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  background:#111827;
}
.poster-archive-link{
  display:block;
  color:inherit;
  text-decoration:none;
}
.poster-image-stage{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:560px;
  overflow:hidden;
  background:#111827;
}
.poster-image-stage img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .22s ease;
}
.poster-archive-card:hover .poster-image-stage img{transform:scale(1.012)}
.poster-category-badge{
  position:absolute;
  top:12px;
  left:12px;
  padding:6px 9px;
  border-radius:4px;
  background:rgba(9,13,24,.82);
  color:#fff;
  font-size:12px;
  font-weight:900;
  backdrop-filter:blur(8px);
}
.poster-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:62px;
  padding:11px 13px;
  border-top:1px solid #283148;
  background:#0f1422;
  color:#f6f7fb;
}
.poster-card-footer div{min-width:0}
.poster-card-footer strong{
  display:block;
  overflow:hidden;
  font-size:14px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.poster-card-footer time{
  display:block;
  margin-top:5px;
  color:#8190aa;
  font-size:12px;
  font-weight:700;
}
.poster-card-footer>span{color:#7f8ba3;font-size:17px}
.poster-image-placeholder{
  color:#64748b;
  font-size:14px;
}
.poster-empty-state{
  padding:80px 20px;
  border:1px dashed var(--line);
  text-align:center;
  color:var(--muted);
}
.poster-empty-state strong,.poster-empty-state span{display:block}
.poster-empty-state strong{margin-bottom:7px;color:var(--text)}
.poster-manager-modal{
  max-height:min(90vh,900px);
  overflow:auto;
}
.poster-manager-copy{margin:-4px 0 18px;color:var(--muted)}
.poster-manager-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.poster-manager-form label{
  display:grid;
  gap:7px;
  font-size:14px;
  font-weight:850;
}
.poster-manager-form .wide{grid-column:1/-1}
.poster-manager-form input,.poster-manager-form select{
  min-height:43px;
  border:1px solid var(--line);
  border-radius:9px;
  padding:0 12px;
  background:var(--panel);
  color:var(--text);
}
.poster-upload-preview{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:230px;
  overflow:hidden;
  border:1px dashed var(--line);
  border-radius:10px;
  background:color-mix(in srgb,var(--panel) 88%,#111827);
}
.poster-upload-preview img{
  display:block;
  max-width:100%;
  max-height:420px;
  object-fit:contain;
}
.poster-upload-preview img[hidden]{display:none}
.poster-upload-preview span{color:var(--muted);font-size:14px}
.poster-form-actions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
}
.poster-admin-section{
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.poster-admin-section h3{margin:0 0 12px}
.poster-admin-list{display:grid;gap:8px}
.poster-admin-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto auto;
  align-items:center;
  gap:10px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:9px;
}
.poster-admin-row img{
  width:54px;height:54px;object-fit:cover;border-radius:6px;background:#111827;
}
.poster-admin-row div{min-width:0}
.poster-admin-row strong,.poster-admin-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.poster-admin-row small{margin-top:4px;color:var(--muted)}
.poster-admin-empty{color:var(--muted)}
@media(max-width:1200px){.poster-image-stage{height:470px}}
@media(max-width:900px){.poster-archive-page{padding:20px 16px 90px}
.poster-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.poster-image-stage{height:440px}
.poster-archive-header{align-items:flex-start}}
@media(max-width:600px){.poster-archive-header{display:grid}
.poster-archive-grid{grid-template-columns:1fr}
.poster-image-stage{height:520px}
.poster-manager-form{grid-template-columns:1fr}
.poster-manager-form .wide{grid-column:auto}
.poster-admin-row{grid-template-columns:44px minmax(0,1fr) auto}
.poster-admin-row img{width:44px;height:44px}
.poster-admin-row [data-poster-delete]{grid-column:3}}
.poster-filter-tabs{
  flex-wrap:wrap;
  align-items:center;
}
.poster-filter-tabs .poster-filter-divider{
  width:1px;
  height:24px;
  margin:0 3px;
  background:var(--line);
}
.poster-filter-tabs button.sub{
  padding:7px 13px;
  font-size:13px;
}
.poster-filter-tabs button.sub.active{
  background:color-mix(in srgb,var(--primary) 14%,var(--panel));
  color:var(--primary);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 35%,transparent);
}
.poster-admin-heading h3{margin:0}
.poster-admin-heading p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:14px;
}
.poster-subcategory-form{
  display:grid;
  grid-template-columns:160px minmax(0,1fr) auto;
  gap:9px;
  margin:14px 0;
}
.poster-subcategory-form select,.poster-subcategory-form input{
  min-height:42px;
  border:1px solid var(--line);
  border-radius:8px;
  padding:0 11px;
  background:var(--panel);
  color:var(--text);
}
.poster-subcategory-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.poster-subcategory-group{
  min-width:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:10px;
  background:color-mix(in srgb,var(--panel) 94%,var(--primary));
}
.poster-subcategory-group h4{
  margin:0 0 10px;
  font-size:14px;
}
.poster-subcategory-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.poster-subcategory-tags>small{
  color:var(--muted);
  font-size:13px;
}
.poster-subcategory-tag{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:29px;
  padding:5px 6px 5px 9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--panel);
  font-size:13px;
  font-weight:800;
}
.poster-subcategory-tag button{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  padding:0;
  border:0;
  border-radius:50%;
  background:color-mix(in srgb,var(--muted) 16%,transparent);
  color:var(--muted);
  cursor:pointer;
}
@media(max-width:700px){.poster-subcategory-form{grid-template-columns:1fr}
.poster-subcategory-groups{grid-template-columns:1fr}
.poster-filter-tabs .poster-filter-divider{display:none}}
#page-calendar,#view-calendar,.calendar-page,.calendar-shell,.calendar-container{
  overflow-anchor:none!important;
}
#page-calendar *:focus,#view-calendar *:focus,.calendar-page *:focus{
  scroll-margin:0!important;
}
.poster-admin-row{
  grid-template-columns:26px 54px minmax(0,1fr) auto auto!important;
}
.poster-drag-handle{
  cursor:grab;
  user-select:none;
  color:var(--muted);
  font-weight:900;
  text-align:center;
}
.poster-admin-row.dragging{
  opacity:.45;
  outline:2px dashed var(--primary);
}
\n#page-live .live-stream-card .live-card-body,\n#view-live .live-stream-card .live-card-body,\n.live-hub-page .live-stream-card .live-card-body{\n  grid-template-columns:56px minmax(0,1fr)!important;\n  column-gap:11px!important;\n  min-height:72px!important;\n  padding:8px 10px!important;\n}
\n#page-live .live-stream-card .live-profile-avatar,\n#view-live .live-stream-card .live-profile-avatar,\n.live-hub-page .live-stream-card .live-profile-avatar{\n  width:56px!important;min-width:56px!important;height:56px!important;flex-basis:56px!important;\n  padding:2px!important;border-radius:10px!important;overflow:hidden!important;\n}
\n#page-live .live-profile-avatar img,#page-live .live-profile-avatar b,\n#view-live .live-profile-avatar img,#view-live .live-profile-avatar b,\n.live-hub-page .live-profile-avatar img,.live-hub-page .live-profile-avatar b{\n  width:100%!important;height:100%!important;object-fit:cover!important;border-radius:7px!important;\n}
\n#page-live .live-card-name-row strong,#view-live .live-card-name-row strong,.live-hub-page .live-card-name-row strong{font-size:16px!important}
\n#posterManagerModal:not([hidden]){display:flex!important;z-index:10020!important}
\n#posterManagerModal .poster-manager-modal{position:relative;z-index:10021!important}
\n@media(max-width:680px){\n  #page-live .live-stream-card .live-card-body,#view-live .live-stream-card .live-card-body,.live-hub-page .live-stream-card .live-card-body{grid-template-columns:48px minmax(0,1fr)!important;min-height:64px!important}\n  #page-live .live-stream-card .live-profile-avatar,#view-live .live-stream-card .live-profile-avatar,.live-hub-page .live-stream-card .live-profile-avatar{width:48px!important;min-width:48px!important;height:48px!important;flex-basis:48px!important}\n}
\n #posterManagerModal:not([hidden]).is-open{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
#posterManagerModal.is-open>.poster-manager-modal{
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
  visibility:visible!important;
}
body.modal-open{overflow:hidden!important}
#page-posters .poster-archive-page{
  max-width:1320px!important;
}
#page-posters .poster-archive-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:start!important;
}
#page-posters .poster-archive-card{
  width:100%!important;
  max-width:none!important;
}
#page-posters .poster-image-stage{
  height:auto!important;
  aspect-ratio:4 / 5!important;
}
#page-posters .poster-image-stage img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
@media(max-width:1100px){#page-posters .poster-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){#page-posters .poster-archive-grid{grid-template-columns:1fr!important}}
#page-posters.poster-archive-page{
  max-width:1320px!important;
  padding:28px 30px 76px!important;
}
#page-posters .poster-archive-header{
  align-items:center!important;
  margin-bottom:16px!important;
  padding:22px 24px!important;
  border:1px solid color-mix(in srgb,var(--primary) 14%,var(--line))!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--panel)),var(--panel) 62%)!important;
  box-shadow:0 10px 28px rgba(34,25,31,.07)!important;
}
#page-posters .poster-archive-header .eyebrow{
  color:var(--primary)!important;
  letter-spacing:.08em!important;
}
#page-posters .poster-archive-header h2{
  color:var(--text)!important;
  margin:4px 0 7px!important;
}
#page-posters .poster-archive-header p{color:var(--muted)!important}
#page-posters #openPosterManager{
  border:1px solid var(--primary)!important;
  border-radius:12px!important;
  background:var(--primary)!important;
  color:#fff!important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 24%,transparent)!important;
}
#page-posters .poster-filter-tabs{
  gap:6px!important;
  margin:0 0 18px!important;
  padding:6px!important;
  border:1px solid var(--line)!important;
  border-radius:14px!important;
  background:var(--panel)!important;
  box-shadow:0 6px 18px rgba(34,25,31,.045)!important;
}
#page-posters .poster-filter-tabs button{
  border-radius:10px!important;
  background:transparent!important;
  color:var(--muted)!important;
}
#page-posters .poster-filter-tabs button:hover{
  background:color-mix(in srgb,var(--primary) 7%,var(--panel))!important;
  color:var(--text)!important;
}
#page-posters .poster-filter-tabs button.active{
  background:color-mix(in srgb,var(--primary) 13%,var(--panel))!important;
  color:var(--primary)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 28%,transparent)!important;
}
#page-posters .poster-filter-tabs button.sub.active{
  background:color-mix(in srgb,var(--accent) 16%,var(--panel))!important;
  color:color-mix(in srgb,var(--accent) 76%,var(--text))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)!important;
}
#page-posters .poster-archive-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}
#page-posters .poster-archive-card{
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:var(--panel)!important;
  box-shadow:0 9px 24px rgba(34,25,31,.07)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
#page-posters .poster-archive-card:hover{
  transform:translateY(-3px)!important;
  border-color:color-mix(in srgb,var(--primary) 28%,var(--line))!important;
  box-shadow:0 14px 32px rgba(34,25,31,.11)!important;
}
#page-posters .poster-image-stage{
  aspect-ratio:4 / 5!important;
  height:auto!important;
  background:color-mix(in srgb,var(--panel) 94%,var(--primary))!important;
}
#page-posters .poster-image-stage img{object-fit:contain!important}
#page-posters .poster-category-badge{
  top:12px!important;
  left:12px!important;
  border:1px solid color-mix(in srgb,var(--primary) 28%,transparent)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--panel) 88%,var(--primary))!important;
  color:var(--primary)!important;
  box-shadow:0 4px 12px rgba(34,25,31,.08)!important;
}
#page-posters .poster-card-footer{
  min-height:68px!important;
  padding:13px 14px!important;
  border-top:1px solid var(--line)!important;
  background:var(--panel)!important;
  color:var(--text)!important;
}
#page-posters .poster-card-footer strong{font-size:15px!important;color:var(--text)!important}
#page-posters .poster-card-footer time{color:var(--muted)!important}
#page-posters .poster-card-footer>span{
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  background:color-mix(in srgb,var(--primary) 9%,var(--panel))!important;
  color:var(--primary)!important;
}
html[data-theme="dark"] #page-posters .poster-archive-card,body.dark #page-posters .poster-archive-card{
  box-shadow:0 10px 28px rgba(0,0,0,.22)!important;
}
@media(max-width:1100px){#page-posters .poster-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){#page-posters.poster-archive-page{padding:18px 14px 68px!important}
#page-posters .poster-archive-header{display:grid!important;padding:18px!important}
#page-posters .poster-archive-grid{grid-template-columns:1fr!important}}
.pwa-install-backdrop{position:fixed;inset:0;z-index:4998;background:rgba(34,25,31,.24);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;transition:opacity .25s ease}
.pwa-install-backdrop.is-open{opacity:1}
.pwa-install-sheet{position:fixed;z-index:4999;left:50%;bottom:max(14px,env(safe-area-inset-bottom));width:min(440px,calc(100% - 24px));transform:translate(-50%,calc(100% + 34px));opacity:0;padding:10px 18px 16px;border:1px solid color-mix(in srgb,var(--primary,#ef476f) 18%,var(--line,#eadde2));border-radius:28px;background:color-mix(in srgb,var(--panel,#fff) 94%,transparent);box-shadow:0 24px 70px rgba(72,37,51,.22);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .25s ease;color:var(--text,#2a2024)}
.pwa-install-sheet.is-open{transform:translate(-50%,0);opacity:1}
.pwa-install-handle{display:block;width:42px;height:5px;margin:0 auto 15px;border-radius:99px;background:color-mix(in srgb,var(--muted,#8b7d83) 28%,transparent)}
.pwa-install-head{display:grid;grid-template-columns:58px minmax(0,1fr) 34px;gap:12px;align-items:center}
.pwa-install-icon{width:58px;height:58px;border-radius:17px;box-shadow:0 8px 24px rgba(239,71,111,.18)}
.pwa-install-head strong{display:block;font-size:18px;letter-spacing:-.04em}
.pwa-install-head small{display:block;margin-top:4px;color:var(--muted,#84767c);font-size:14px}
.pwa-install-close{width:34px;height:34px;border:0;border-radius:50%;background:var(--panel2,#f8f1f4);color:var(--muted,#84767c);font-size:20px;line-height:1;cursor:pointer}
.pwa-install-copy{margin:15px 2px 14px;color:var(--muted,#76686e);font-size:14px;line-height:1.65}
.pwa-ios-guide{margin:15px 0 14px;padding:13px;border:1px solid var(--line,#eadde2);border-radius:18px;background:var(--panel2,#fff8fa);transition:.25s ease}
.pwa-ios-guide.is-highlighted{box-shadow:0 0 0 4px color-mix(in srgb,var(--primary,#ef476f) 18%,transparent);transform:scale(1.015)}
.pwa-ios-guide b{display:block;margin-bottom:9px;font-size:14px}
.pwa-ios-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.pwa-ios-steps span{padding:9px 4px;border-radius:12px;background:var(--panel,#fff);text-align:center;font-size:13px;font-weight:800}
.pwa-ios-steps i{display:block;margin-bottom:4px;font-style:normal;font-size:18px}
.pwa-install-actions{display:grid;gap:8px}
.pwa-install-confirm{min-height:50px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--primary,#ef476f),color-mix(in srgb,var(--primary,#ef476f) 72%,#ff8eab));color:#fff;font-size:16px;font-weight:900;box-shadow:0 10px 25px color-mix(in srgb,var(--primary,#ef476f) 25%,transparent);cursor:pointer}
.pwa-install-later{min-height:40px;border:0;background:transparent;color:var(--muted,#84767c);font-weight:800;cursor:pointer}
.pwa-install-open{overflow:hidden}
.mobile-pwa-install-button{display:none}
@media(max-width:768px){.mobile-pwa-install-button{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 24px);margin:10px 12px 4px;padding:11px;border:1px solid color-mix(in srgb,var(--primary,#ef476f) 20%,var(--line,#eadde2));border-radius:14px;background:color-mix(in srgb,var(--primary,#ef476f) 7%,var(--panel,#fff));color:var(--primary,#ef476f);font-weight:900}
.pwa-install-sheet{bottom:max(10px,env(safe-area-inset-bottom));border-radius:26px}}
@media(min-width:769px){.pwa-install-sheet,.pwa-install-backdrop{display:none!important}}
#page-home #homeLiveStrip{
  display:none!important;
}
#page-home .home-v2-hero.is-live{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(300px,42%) minmax(460px,58%)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  width:min(100%,1120px)!important;
  min-height:330px!important;
  margin:0 auto 22px!important;
  padding:26px!important;
  column-gap:28px!important;
  row-gap:12px!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:24px!important;
  background:var(--panel)!important;
  box-shadow:0 16px 42px rgba(44,30,37,.09)!important;
}
#page-home .home-v2-hero.is-live .home-v2-hero-copy{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  grid-column:1!important;
  grid-row:1 / span 2!important;
  align-self:stretch!important;
  min-width:0!important;
  padding:20px 16px 20px 8px!important;
  background:
    radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 42%)!important;
}
#page-home .home-v2-hero.is-live .home-archive-logo{
  display:block!important;
  width:min(100%,300px)!important;
  height:auto!important;
  object-fit:contain!important;
}
#page-home .home-v2-hero.is-live .home-date{
  margin-top:26px!important;
}
#page-home .home-v2-hero.is-live .home-v2-live-media{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  grid-column:2!important;
  grid-row:1!important;
  justify-self:stretch!important;
  align-self:end!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/9!important;
  margin:0!important;
  padding:12px 16px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line))!important;
  border-radius:18px!important;
  background:#171316!important;
  box-shadow:0 10px 28px rgba(45,27,35,.12)!important;
}
#page-home .home-v2-hero.is-live .home-v2-live-media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;
}
#page-home .home-v2-hero.is-live .home-v2-live-media img{
  display:block!important;
  width:88%!important;
  height:auto!important;
  max-width:88%!important;
  max-height:86%!important;
  aspect-ratio:16/9!important;
  object-fit:contain!important;
  object-position:center center!important;
  border-radius:12px!important;
  background:#171316!important;
  box-shadow:0 8px 24px rgba(25,16,20,.18)!important;
}
#page-home .home-v2-hero.is-live .home-v2-status{
  position:relative!important;
  z-index:3!important;
  grid-column:2!important;
  grid-row:2!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:11px 13px!important;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--panel) 95%,var(--primary) 5%)!important;
  color:var(--text)!important;
  box-shadow:0 7px 18px rgba(51,30,39,.05)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#page-home .home-v2-hero.is-live .home-v2-status strong{
  color:var(--text)!important;
  font-size:14px!important;
}
#page-home .home-v2-hero.is-live .home-v2-status small{
  color:var(--muted)!important;
  font-size:12px!important;
}
#page-home .home-v2-hero.is-live .home-v2-status>span{
  flex:0 0 auto!important;
  padding:7px 10px!important;
  border:1px solid color-mix(in srgb,var(--primary) 25%,transparent)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--primary) 12%,var(--panel))!important;
  color:var(--primary)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}
#page-home .home-v2-hero.is-live .hero-status-dot{
  background:var(--primary)!important;
  box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
#page-home .home-v2-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
}
#page-home .home-v2-grid>*{
  min-width:0!important;
}
@media(max-width:1050px){#page-home .home-v2-hero.is-live{
    grid-template-columns:minmax(260px,38%) minmax(420px,62%)!important;
    width:100%!important;
    padding:22px!important;
    column-gap:22px!important;
  }}
@media(max-width:820px){#page-home .home-v2-hero.is-live{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    min-height:0!important;
    padding:18px!important;
    gap:12px!important;
    border-radius:20px!important;
  }
#page-home .home-v2-hero.is-live .home-v2-hero-copy{
    align-self:auto!important;
    min-height:0!important;
    padding:8px 4px 12px!important;
  }
#page-home .home-v2-hero.is-live .home-archive-logo{
    width:min(78vw,260px)!important;
  }
#page-home .home-v2-hero.is-live .home-date{
    margin-top:16px!important;
  }
#page-home .home-v2-hero.is-live .home-v2-live-media{
    width:100%!important;
    max-width:none!important;
    aspect-ratio:16/9!important;
    padding:10px 12px!important;
    border-radius:15px!important;
  }
#page-home .home-v2-hero.is-live .home-v2-live-media img{
    width:94%!important;
    max-width:94%!important;
    max-height:90%!important;
    border-radius:10px!important;
  }
#page-home .home-v2-hero.is-live .home-v2-status{
    width:100%!important;
    padding:10px 11px!important;
    border-radius:13px!important;
  }
#page-home .home-v2-grid{
    grid-template-columns:1fr!important;
  }}
#page-home .home-v2-week{
  grid-column:1!important;
}
#page-home .home-v2-vod{
  grid-column:2!important;
}
#page-home .home-v2-live-members{
  display:block!important;
  grid-column:1 / -1!important;
}
#page-home .home-v2-live-members{
  padding:18px!important;
}
#page-home .home-v2-live-members .home-section-head{
  margin-bottom:12px!important;
}
#page-home .home-v2-live-member-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:11px!important;
}
#page-home .home-v2-live-member{
  display:block!important;
  overflow:hidden!important;
  padding:0!important;
  border-radius:14px!important;
  background:var(--panel)!important;
}
#page-home .home-v2-live-member-thumb{
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/9!important;
  border-radius:0!important;
}
#page-home .home-v2-live-member>strong{
  display:block!important;
  padding:9px 10px 10px!important;
  font-size:14px!important;
}
#page-home .home-v2-vod{
  min-height:0!important;
  padding:18px!important;
}
#page-home .home-v2-vod .home-section-head{
  margin-bottom:12px!important;
}
#page-home .home-v2-vod .home-section-head h2{
  font-size:17px!important;
}
#page-home #homeRecentVodList{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(205px,.55fr)!important;
  grid-template-rows:1fr 1fr!important;
  gap:10px!important;
  min-height:250px!important;
}
#page-home #homeRecentVodList .home-vod-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:88px minmax(0,1fr) 12px!important;
  align-items:center!important;
  gap:9px!important;
  min-height:0!important;
  padding:9px!important;
  overflow:hidden!important;
  border:1px solid var(--line)!important;
  border-radius:13px!important;
  background:var(--panel)!important;
  box-shadow:none!important;
}
#page-home #homeRecentVodList .home-vod-thumb{
  display:block!important;
  width:88px!important;
  height:50px!important;
  overflow:hidden!important;
  border-radius:9px!important;
  background:#eee8eb!important;
}
#page-home #homeRecentVodList .home-vod-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
#page-home #homeRecentVodList .home-vod-copy{
  min-width:0!important;
}
#page-home #homeRecentVodList .home-vod-copy em{
  display:block!important;
  margin:0 0 4px!important;
  color:var(--primary)!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:950!important;
  letter-spacing:.1em!important;
}
#page-home #homeRecentVodList .home-vod-copy strong{
  display:-webkit-box!important;
  overflow:hidden!important;
  color:var(--text)!important;
  font-size:12px!important;
  line-height:1.45!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}
#page-home #homeRecentVodList .home-vod-copy small{
  display:block!important;
  margin-top:4px!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1.35!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  min-height:250px!important;
  padding:0!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured .home-vod-thumb{
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:16/8.5!important;
  border-radius:0!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured .home-vod-copy{
  flex:1 1 auto!important;
  padding:10px 12px 12px!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured .home-vod-copy strong{
  font-size:13px!important;
  line-height:1.45!important;
  -webkit-line-clamp:2!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured .home-vod-copy small{
  font-size:12px!important;
}
#page-home #homeRecentVodList .home-vod-row.is-featured>i{
  position:absolute!important;
  right:11px!important;
  bottom:10px!important;
}
#page-home #homeRecentVodList .home-vod-row:not(.is-featured):nth-child(2){
  grid-column:2!important;
  grid-row:1!important;
}
#page-home #homeRecentVodList .home-vod-row:not(.is-featured):nth-child(3){
  grid-column:2!important;
  grid-row:2!important;
}
#page-home .home-v2-week{
  min-height:0!important;
  padding:18px!important;
}
#page-home .home-v2-week .home-section-head{
  margin-bottom:12px!important;
}
#page-home .home-v2-week .home-section-head h2{
  font-size:17px!important;
}
#page-home .home-v2-upcoming{
  gap:9px!important;
}
#page-home .home-v2-upcoming-row{
  min-height:67px!important;
  padding:11px 13px!important;
}
@media(max-width:1100px){#page-home .home-v2-week,#page-home .home-v2-vod,#page-home .home-v2-live-members{
    grid-column:1!important;
  }
#page-home .home-v2-live-member-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }}
@media(max-width:760px){#page-home #homeRecentVodList{
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
  }
#page-home #homeRecentVodList .home-vod-row.is-featured,#page-home #homeRecentVodList .home-vod-row:not(.is-featured):nth-child(2),#page-home #homeRecentVodList .home-vod-row:not(.is-featured):nth-child(3){
    grid-column:1!important;
    grid-row:auto!important;
  }
#page-home .home-v2-live-member-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }}
.push-settings-backdrop{
  position:fixed;inset:0;z-index:2200;
  background:rgba(20,15,18,.34);
  opacity:0;transition:opacity .22s ease;
  backdrop-filter:blur(3px);
}
.push-settings-backdrop.is-open{opacity:1}
.push-settings-sheet{
  position:fixed;left:50%;bottom:0;z-index:2201;
  width:min(100%,520px);
  padding:10px 18px calc(18px + env(safe-area-inset-bottom));
  border:1px solid var(--line);border-bottom:0;
  border-radius:24px 24px 0 0;background:var(--panel);
  box-shadow:0 -18px 50px rgba(38,22,30,.18);
  transform:translate(-50%,105%);transition:transform .26s ease;
}
.push-settings-sheet.is-open{transform:translate(-50%,0)}
.push-settings-handle{display:block;width:42px;height:4px;margin:0 auto 14px;border-radius:99px;background:var(--line)}
.push-settings-head{display:flex;align-items:center;gap:11px}
.push-settings-head img{width:48px;height:48px;border-radius:13px}
.push-settings-head div{min-width:0;flex:1}
.push-settings-head strong{display:block;font-size:17px}
.push-settings-head small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}
.push-settings-head>button{width:34px;height:34px;border:0;border-radius:10px;background:var(--soft);color:var(--muted);font-size:18px}
.push-settings-body{margin-top:16px}
.push-settings-row{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 96%,var(--primary) 4%)}
.push-settings-row>div{min-width:0;flex:1}
.push-settings-row b{display:block;font-size:14px}
.push-settings-row small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.5}
.push-switch{position:relative;flex:0 0 auto;width:48px;height:28px}
.push-switch input{position:absolute;opacity:0}
.push-switch span{position:absolute;inset:0;border-radius:99px;background:#d8d2d5;transition:.2s}
.push-switch span::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.18);transition:.2s}
.push-switch input:checked+span{background:var(--primary)}
.push-switch input:checked+span::after{transform:translateX(20px)}
#pushSettingsStatus{margin:12px 2px 0;color:var(--muted);font-size:12px}
.push-settings-note{display:block;margin:9px 2px 0;color:var(--muted);font-size:12px;line-height:1.55}
.app-topbar{
  padding-right:84px!important;
}
.app-topbar .top-live-cluster{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
.app-topbar .top-live-cluster .live-toast{
  flex:0 1 auto!important;
  width:min(470px,42vw)!important;
  max-width:min(470px,calc(100vw - 470px))!important;
  margin:0 74px 0 0!important;
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
}
.app-topbar .top-live-cluster .live-primary{
  overflow:hidden!important;
  border-radius:14px!important;
}
@media(max-width:1100px){.app-topbar{
    padding-right:76px!important;
  }
.app-topbar .top-live-cluster .live-toast{
    width:min(430px,48vw)!important;
    max-width:calc(100vw - 360px)!important;
    margin-right:68px!important;
  }}
@media(max-width:900px){.app-topbar{
    padding-right:70px!important;
  }
.app-topbar .top-live-cluster .live-toast{
    max-width:calc(100vw - 190px)!important;
    margin-right:64px!important;
  }}
@media(max-width:768px){.app-topbar{
    padding-right:64px!important;
  }
.app-topbar .top-live-cluster .live-toast{
    width:auto!important;
    max-width:calc(100vw - 118px)!important;
    margin-right:58px!important;
  }}
:root{
  --responsive-sidebar-width:clamp(210px,13.55vw,260px);
  --responsive-page-gutter:clamp(12px,1.35vw,24px);
}
html,body{
  max-width:100%!important;
  overflow-x:hidden!important;
}
*,*::before,*::after{box-sizing:border-box!important}
img,video,canvas,svg,iframe{max-width:100%!important}
@media (min-width:901px){body{
    padding-left:var(--responsive-sidebar-width)!important;
  }
.app-sidebar{
    width:var(--responsive-sidebar-width)!important;
    max-width:var(--responsive-sidebar-width)!important;
    min-width:0!important;
    padding-left:clamp(12px,1.05vw,20px)!important;
    padding-right:clamp(12px,1.05vw,20px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-width:thin!important;
  }
.app-topbar{
    left:var(--responsive-sidebar-width)!important;
    width:calc(100% - var(--responsive-sidebar-width))!important;
    max-width:calc(100% - var(--responsive-sidebar-width))!important;
    min-width:0!important;
    padding-left:var(--responsive-page-gutter)!important;
    padding-right:clamp(72px,5.5vw,96px)!important;
  }
.app-shell{
    width:min(var(--v9-content-max,1520px),calc(100% - (var(--responsive-page-gutter) * 2)))!important;
    max-width:calc(100% - (var(--responsive-page-gutter) * 2))!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
.app-page,.panel,.home-v2,.page-section-head{
    min-width:0!important;
    max-width:100%!important;
  }}
@media (min-width:901px) and (max-width:1600px){:root{
    --responsive-sidebar-width:clamp(205px,13.2vw,232px);
    --responsive-page-gutter:clamp(10px,1vw,18px);
  }
.sidebar-profile-main{
    padding:14px 10px 10px!important;
  }
.sidebar-profile-head img{
    width:68px!important;
    height:68px!important;
  }
.sidebar-onair-summary{
    padding-left:8px!important;
    padding-right:8px!important;
  }
.sidebar-nav .sidebar-tab{
    min-height:42px!important;
    padding-left:11px!important;
    padding-right:11px!important;
  }}
@media (min-width:901px) and (max-height:900px){.app-sidebar{
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
.sidebar-profile-main{
    margin-bottom:8px!important;
    padding-top:10px!important;
    padding-bottom:8px!important;
  }
.sidebar-profile-head{
    gap:5px!important;
  }
.sidebar-profile-head img{
    width:58px!important;
    height:58px!important;
  }
.sidebar-profile-head strong{
    font-size:17px!important;
  }
.sidebar-live-row{
    margin-top:7px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
.sidebar-onair-summary{
    padding-top:8px!important;
    padding-bottom:8px!important;
    margin-bottom:7px!important;
  }
.sidebar-onair-list{
    gap:4px!important;
  }
.sidebar-onair-member{
    min-height:31px!important;
  }
.sidebar-brand-footer.archive-brand{
    padding-top:7px!important;
    padding-bottom:5px!important;
  }
.sidebar-brand-footer.archive-brand img{
    max-height:46px!important;
    width:auto!important;
  }
.sidebar-nav{
    gap:0!important;
    padding-bottom:4px!important;
  }
.sidebar-nav .sidebar-tab{
    min-height:38px!important;
    padding-top:6px!important;
    padding-bottom:6px!important;
  }
.sidebar-live-separator{
    height:10px!important;
    margin-top:2px!important;
    margin-bottom:1px!important;
  }}
@media (min-width:901px) and (max-width:1450px){#page-calendar .schedule-layout,.calendar-page,.calendar-container{
    grid-template-columns:minmax(180px,230px) minmax(0,1fr) minmax(210px,260px)!important;
  }
.stats-columns,.stats-highlight-grid,.home-v2-grid{
    min-width:0!important;
  }}
@media (max-width:900px){body{
    padding-left:0!important;
  }
.app-topbar{
    left:0!important;
    width:100%!important;
    max-width:100%!important;
  }
.app-shell{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
.app-sidebar{
    overflow-y:auto!important;
  }}
@media (max-width:560px){.app-shell{
    width:calc(100% - 14px)!important;
    max-width:calc(100% - 14px)!important;
  }
table{
    display:block!important;
    max-width:100%!important;
    overflow-x:auto!important;
  }}
@media (max-width:1200px) and (hover:none) and (pointer:coarse){body{
    padding-left:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
.app-sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(86vw,310px)!important;
    max-width:min(86vw,310px)!important;
    transform:translateX(-105%)!important;
    transition:transform .25s ease!important;
    z-index:3000!important;
    overflow-y:auto!important;
    box-shadow:18px 0 44px rgba(35,22,29,.18)!important;
  }
body.sidebar-open .app-sidebar,.app-sidebar.is-open{
    transform:translateX(0)!important;
  }
.app-topbar{
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:clamp(52px,11vw,66px)!important;
    padding-right:clamp(58px,13vw,74px)!important;
  }
.app-shell{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
.app-main,.main-content,.page-main{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    padding-left:0!important;
  }
.app-page,.page,.page-content,.page-inner{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
#page-calendar .schedule-layout,.calendar-page,.calendar-container{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
.home-v2-grid,.stats-grid{
    grid-template-columns:1fr!important;
  }
.poster-grid,.live-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }.sidebar-toggle{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }}
@media (max-width:620px) and (hover:none) and (pointer:coarse){.app-shell{
    width:calc(100% - 12px)!important;
    max-width:calc(100% - 12px)!important;
  }
.poster-grid,.live-grid{
    grid-template-columns:1fr!important;
  }}
@media(min-width:901px){.app-topbar{
    left:0!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
.app-shell{
    margin-left:auto!important;
    margin-right:auto!important;
  }}
#page-calendar .schedule-layout{
  gap:18px!important;
  align-items:start!important;
}
#page-calendar .calendar-card{
  min-height:auto!important;
  padding:22px!important;
  border-radius:22px!important;
  border:1px solid rgba(51, 65, 84, .10)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246, 247, 249, .98))!important;
  box-shadow:0 18px 42px rgba(38, 50, 66, .08)!important;
}
#page-calendar .calendar-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid rgba(51, 65, 84, .09)!important;
}
#page-calendar .month-control{
  gap:12px!important;
}
#page-calendar .month-control>div{
  min-width:210px!important;
}
#page-calendar .calendar-kicker{
  display:block!important;
  margin-bottom:5px!important;
  color:#788291!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.17em!important;
}
#page-calendar #monthTitle{
  margin:0!important;
  color:#182231!important;
  font-size:26px!important;
  line-height:1.15!important;
  letter-spacing:-.045em!important;
}
#page-calendar .month-control p{
  margin:7px 0 0!important;
  color:#8d98a8!important;
  font-size:14px!important;
}
#page-calendar .circle{
  width:42px!important;
  height:42px!important;
  border-radius:13px!important;
  border:1px solid rgba(51, 65, 84, .11)!important;
  background:#fff!important;
  color:#334154!important;
  box-shadow:0 6px 14px rgba(38, 50, 66, .06)!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
#page-calendar .head-actions{
  gap:8px!important;
}
#page-calendar .head-actions .btn,#page-calendar .head-actions button{
  min-height:40px!important;
  border-radius:12px!important;
}
#page-calendar .filters{
  gap:8px!important;
  margin:16px 0!important;
  padding:0!important;
}
#page-calendar .filter{
  min-height:32px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:850!important;
  box-shadow:none!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
#page-calendar .filter.active{
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--filter) 76%,#fff),0 5px 12px color-mix(in srgb,var(--filter) 18%,transparent)!important;
}
#page-calendar .weekday-row{
  overflow:hidden!important;
  margin-top:2px!important;
  border:1px solid rgba(51, 65, 84, .10)!important;
  border-bottom:0!important;
  border-radius:15px 15px 0 0!important;
  background:#f6f7f9!important;
}
#page-calendar .weekday-row span{
  padding:10px 6px!important;
  color:#667284!important;
  font-size:13px!important;
  font-weight:900!important;
}
#page-calendar .weekday-row span:first-child{color:#dd6670!important}
#page-calendar .weekday-row span:last-child{color:#5684d6!important}
#page-calendar .calendar-stage{
  overflow:visible!important;
  border-radius:0 0 15px 15px!important;
}
#page-calendar .calendar-grid{
  min-height:0!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid rgba(51, 65, 84, .10)!important;
  border-radius:0 0 15px 15px!important;
  background:rgba(51, 65, 84, .08)!important;
}
#page-calendar .day{
  min-height:132px!important;
  padding:9px!important;
  border:0!important;
  border-right:1px solid rgba(51, 65, 84, .09)!important;
  border-bottom:1px solid rgba(51, 65, 84, .09)!important;
  background:#fff!important;
  transition:background .16s ease,box-shadow .16s ease!important;
}
#page-calendar .day:nth-child(7n){border-right:0!important}
#page-calendar .day.outside{
  background:#f6f7f9!important;
  opacity:.56!important;
}
#page-calendar .day.today{
  position:relative!important;
  background:linear-gradient(180deg,#fbf8ff,#fff)!important;
  box-shadow:inset 0 0 0 2px #8e67d7!important;
  z-index:1!important;
}
#page-calendar .day.today .date-num{
  display:grid!important;
  place-items:center!important;
  width:29px!important;
  height:29px!important;
  margin:-2px 0 7px!important;
  border-radius:50%!important;
  background:#7d54cd!important;
  color:#fff!important;
  box-shadow:0 6px 13px rgba(125,84,205,.24)!important;
}
#page-calendar .date-num{
  margin:0 0 8px!important;
  color:#334154!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:900!important;
}
#page-calendar .events{
  gap:5px!important;
}
#page-calendar .event-pill{
  min-height:30px!important;
  padding:7px 32px 7px 9px!important;
  border:1px solid color-mix(in srgb,var(--event) 28%,rgba(51, 65, 84, .12))!important;
  border-left:3px solid var(--event)!important;
  border-radius:9px!important;
  background:color-mix(in srgb,var(--event) 10%,#fff)!important;
  color:#263242!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.35!important;
  box-shadow:0 3px 8px rgba(38, 50, 66, .035)!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
#page-calendar .event-pill time{
  margin-top:2px!important;
  color:#788291!important;
  font-size:12px!important;
  font-weight:750!important;
}
#page-calendar .event-star{
  right:7px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  padding:2px!important;
  color:#d1a624!important;
  font-size:15px!important;
}
#page-calendar .event-pill.focused{
  box-shadow:0 0 0 2px rgba(209,166,36,.24),0 6px 14px rgba(38, 50, 66, .06)!important;
}
#page-calendar .event-pill.dimmed{
  opacity:.26!important;
}
#page-calendar .calendar-footer-note{
  margin-top:14px!important;
  padding:13px 2px 0!important;
  border-top:1px solid rgba(51, 65, 84, .09)!important;
  color:#8d98a8!important;
  font-size:12px!important;
}
#page-calendar .side-stack>.panel,#page-calendar .calendar-memo-panel{
  border-radius:18px!important;
  border:1px solid rgba(51, 65, 84, .10)!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 34px rgba(38, 50, 66, .065)!important;
}
#page-calendar .upcoming{
  padding:11px!important;
  border:1px solid rgba(51, 65, 84, .08)!important;
  background:#f6f7f9!important;
}
#page-calendar .upcoming:hover{
  background:#f1f3f6!important;
}
@media (hover:hover) and (pointer:fine){#page-calendar .circle:hover{
    transform:translateY(-2px)!important;
    background:#f6f7f9!important;
    box-shadow:0 10px 20px rgba(38, 50, 66, .09)!important;
  }
#page-calendar .filter:hover,#page-calendar .event-pill:hover{
    transform:translateY(-1px)!important;
  }
#page-calendar .event-pill:hover{
    box-shadow:0 7px 14px rgba(38, 50, 66, .075)!important;
  }
#page-calendar .day:not(.outside):hover{
    background:#fcfdfc!important;
  }}
html[data-theme="dark"] #page-calendar .calendar-card,html[data-theme="dark"] #page-calendar .side-stack>.panel,html[data-theme="dark"] #page-calendar .calendar-memo-panel{
  border-color:#263242!important;
  background:linear-gradient(180deg,#131b27,#131b27)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.20)!important;
}
html[data-theme="dark"] #page-calendar #monthTitle,html[data-theme="dark"] #page-calendar .date-num{color:#e9edf2!important}
html[data-theme="dark"] #page-calendar .month-control p,html[data-theme="dark"] #page-calendar .calendar-footer-note{color:#8d98a8!important}
html[data-theme="dark"] #page-calendar .circle{
  border-color:#334154!important;background:#182231!important;color:#e9edf2!important
}
html[data-theme="dark"] #page-calendar .weekday-row{border-color:#263242!important;background:#182231!important}
html[data-theme="dark"] #page-calendar .calendar-grid{border-color:#263242!important;background:#263242!important}
html[data-theme="dark"] #page-calendar .day{border-color:#263242!important;background:#131b27!important}
html[data-theme="dark"] #page-calendar .day.outside{background:#131b27!important}
html[data-theme="dark"] #page-calendar .day.today{background:linear-gradient(180deg,#2a2440,#131b27)!important}
html[data-theme="dark"] #page-calendar .event-pill{
  color:#e9edf2!important;
  border-color:color-mix(in srgb,var(--event) 42%,#263242)!important;
  background:color-mix(in srgb,var(--event) 20%,#182231)!important;
}
html[data-theme="dark"] #page-calendar .event-pill time{color:#a0a8b3!important}
html[data-theme="dark"] #page-calendar .upcoming{border-color:#263242!important;background:#182231!important}
@media(max-width:1260px){#page-calendar .schedule-layout{grid-template-columns:1fr!important}
#page-calendar .side-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){#page-calendar .calendar-card{padding:14px!important;border-radius:17px!important}
#page-calendar .calendar-head{align-items:flex-start!important;flex-direction:column!important}
#page-calendar .month-control>div{min-width:0!important}
#page-calendar #monthTitle{font-size:22px!important}
#page-calendar .day{min-height:112px!important;padding:6px!important}
#page-calendar .event-pill{padding:6px 24px 6px 7px!important;font-size:12px!important}
#page-calendar .side-stack{display:flex!important}}
#page-calendar .event-pill{
  border:1px solid color-mix(in srgb,var(--event) 58%,var(--line))!important;
  border-left-width:1px!important;
  background:color-mix(in srgb,var(--event) 17%,var(--panel))!important;
  box-shadow:none!important;
}
#page-calendar .event-pill:hover{
  background:color-mix(in srgb,var(--event) 23%,var(--panel))!important;
}
#page-calendar .event-pill.multi-day,#page-calendar .event-pill.multi-day.range-start,#page-calendar .event-pill.multi-day.range-week-start{
  border-left-width:1px!important;
}
html[data-theme="dark"] #page-calendar .event-pill{
  border-color:color-mix(in srgb,var(--event) 60%,var(--line))!important;
  border-left-width:1px!important;
  background:color-mix(in srgb,var(--event) 22%,var(--panel))!important;
}
.entry-notice-layer{
  padding:24px!important;
}
.entry-notice-layer>.entry-notice-card{
  width:min(1120px,calc(100vw - 48px))!important;
  max-width:1120px!important;
  max-height:min(92vh,920px)!important;
  overflow:auto!important;
}
.entry-notice-main{
  grid-template-columns:minmax(360px,1.08fr) minmax(320px,.92fr)!important;
  gap:36px!important;
  align-items:center!important;
  padding:30px!important;
}
.entry-notice-image-wrap{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  overflow:hidden!important;
  background:color-mix(in srgb,var(--bg) 72%,var(--panel))!important;
}
.entry-notice-image-wrap[hidden]{display:none!important}
.entry-notice-image-wrap img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:min(64vh,680px)!important;
  object-fit:contain!important;
  object-position:center!important;
}
.entry-notice-copy h2{
  font-size:clamp(30px,3.4vw,48px)!important;
}
@media(max-width:900px){.entry-notice-layer>.entry-notice-card{
    width:min(760px,calc(100vw - 36px))!important;
  }
.entry-notice-main{
    grid-template-columns:1fr!important;
    gap:22px!important;
    padding:22px!important;
  }
.entry-notice-image-wrap img{
    max-height:48vh!important;
  }
.entry-notice-copy h2{
    font-size:clamp(26px,5vw,38px)!important;
  }}
@media(max-width:560px){.entry-notice-layer{
    padding:10px!important;
  }
.entry-notice-layer>.entry-notice-card{
    width:calc(100vw - 20px)!important;
    max-height:94dvh!important;
    border-radius:18px!important;
  }
.entry-notice-header{
    padding:16px 17px 14px!important;
  }
.entry-notice-main{
    gap:16px!important;
    padding:16px!important;
  }
.entry-notice-image-wrap{
    border-radius:13px!important;
  }
.entry-notice-image-wrap img{
    max-height:42dvh!important;
  }
.entry-notice-copy h2{
    font-size:22px!important;
  }}
#page-calendar .portal-side-right,#page-calendar .mobile-info-tabs{
  display:none!important;
}
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:none!important;
  width:100%!important;
  gap:0!important;
  padding-left:0!important;
  align-items:start!important;
}
#page-calendar .calendar-card{
  width:100%!important;
  max-width:none!important;
}
#page-calendar .calendar-table-scroll{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-gutter:stable;
  border-radius:15px!important;
}
#page-calendar .calendar-table-inner{
  width:100%!important;
  min-width:0!important;
}
#page-calendar .calendar-stage{
  width:100%!important;
  overflow:visible!important;
}
#page-calendar .event-pill,#page-calendar .event-pill *{
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
#page-calendar .event-pill{
  white-space:normal!important;
}
#page-calendar .event-pill time{
  white-space:nowrap!important;
}
@media (min-width:769px) and (max-width:1180px){#page-calendar .calendar-table-inner{
    min-width:980px!important;
  }
#page-calendar .weekday-row,#page-calendar .calendar-grid{
    grid-template-columns:repeat(7,minmax(140px,1fr))!important;
  }
#page-calendar .day{
    min-width:140px!important;
  }}
.floating-member-db{
  display:none!important;
}
body.admin-mode #toggleAdmin{
  display:none!important;
}
.admin-control-hub{
  position:fixed!important;
  right:24px!important;
  bottom:24px!important;
  z-index:2140!important;
  display:none!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:10px!important;
}
body.admin-mode .admin-control-hub.admin-only{
  display:flex!important;
}
.admin-control-launcher{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:132px!important;
  height:48px!important;
  padding:0 16px!important;
  border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line))!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#8b2745))!important;
  color:#fff!important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 24%,transparent)!important;
  cursor:pointer!important;
  font-weight:900!important;
}
.admin-control-launcher svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.admin-control-menu{
  position:absolute!important;
  right:0!important;
  bottom:58px!important;
  width:250px!important;
  padding:12px!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--panel) 96%,transparent)!important;
  color:var(--text)!important;
  box-shadow:0 22px 60px rgba(33,18,25,.18)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.admin-control-menu[hidden]{display:none!important}
.admin-control-menu header{
  padding:4px 5px 10px!important;
  border-bottom:1px solid var(--line)!important;
}
.admin-control-menu header span,.admin-control-menu header strong{display:block!important}
.admin-control-menu header span{
  color:var(--primary)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.16em!important;
}
.admin-control-menu header strong{
  margin-top:3px!important;
  font-size:16px!important;
}
.admin-control-menu>button{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:40px!important;
  margin-top:7px!important;
  padding:9px 11px!important;
  border:1px solid var(--line)!important;
  border-radius:11px!important;
  background:var(--panel2)!important;
  color:var(--text)!important;
  cursor:pointer!important;
  text-align:left!important;
  font-size:14px!important;
  font-weight:850!important;
}
.admin-control-menu>button:hover{
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line))!important;
  background:color-mix(in srgb,var(--primary) 7%,var(--panel2))!important;
}
.admin-control-menu>.admin-control-logout{
  color:#d94a63!important;
}
html[data-theme="dark"] .admin-control-menu{
  background:rgba(19, 27, 39, .96)!important;
  border-color:#334154!important;
  box-shadow:0 22px 60px rgba(0,0,0,.40)!important;
}
html[data-theme="dark"] .admin-control-menu>button{
  background:#182231!important;
  border-color:#334154!important;
  color:#f1f3f6!important;
}
html[data-theme="dark"] #page-home .sidebar-brand-footer.archive-brand,html[data-theme="dark"] .sidebar-brand-footer.archive-brand{
  background:transparent!important;
}
html[data-theme="dark"] .sidebar-brand-footer.archive-brand img,html[data-theme="dark"] #page-home .home-archive-logo{
  filter:brightness(0) invert(1) drop-shadow(0 3px 12px rgba(255,255,255,.07))!important;
  opacity:.96!important;
}
html[data-theme="dark"] #page-home .home-v2-hero{
  background:
    radial-gradient(circle at 84% 22%,rgba(236,49,93,.12),transparent 34%),
    linear-gradient(135deg,#0f1520 0%,#0f1520 58%,#1d171a 100%)!important;
  border-color:#263242!important;
  box-shadow:0 18px 48px rgba(0,0,0,.28)!important;
}
html[data-theme="dark"] #page-home .home-v2-hero:not(.is-live){
  background:
    radial-gradient(circle at 88% 46%,rgba(236,49,93,.11),transparent 22%),
    linear-gradient(135deg,#0f1520,#0f1520 65%,#1d171a)!important;
}
html[data-theme="dark"] #page-home .home-v2-hero:not(.is-live)::after{
  color:rgba(255,255,255,.035)!important;
}
html[data-theme="dark"] #page-home .home-v2-status,html[data-theme="dark"] #page-home .home-v2-hero.is-live .home-v2-status{
  background:rgba(19, 27, 39, .94)!important;
  border-color:#334154!important;
  color:#e9edf2!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
}
html[data-theme="dark"] #page-home .panel,html[data-theme="dark"] #page-home .home-v2-card{
  background:#131b27!important;
  border-color:#263242!important;
  color:#e9edf2!important;
  box-shadow:0 14px 36px rgba(0,0,0,.20)!important;
}
html[data-theme="dark"] #page-home .home-v2-stats{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-home .home-v2-stats article,html[data-theme="dark"] #page-home .home-v2-upcoming-row,html[data-theme="dark"] #page-home .home-v2-next-event,html[data-theme="dark"] #page-home .home-v2-live-member,html[data-theme="dark"] #page-home .home-v2-shortcut-grid>*{
  background:#182231!important;
  border-color:#334154!important;
  color:#e9edf2!important;
}
html[data-theme="dark"] #page-home .home-v2-stats i,html[data-theme="dark"] #page-home .home-v2-dday-badge,html[data-theme="dark"] #page-home .home-v2-shortcut-grid i{
  background:rgba(236,49,93,.12)!important;
  color:#ff7897!important;
}
html[data-theme="dark"] #page-home h1,html[data-theme="dark"] #page-home h2,html[data-theme="dark"] #page-home h3,html[data-theme="dark"] #page-home strong,html[data-theme="dark"] #page-home b{
  color:#f6f7f9!important;
}
html[data-theme="dark"] #page-home p,html[data-theme="dark"] #page-home small,html[data-theme="dark"] #page-home .home-date,html[data-theme="dark"] #page-home .home-v2-stats span{
  color:#a0a8b3!important;
}
@media(max-width:768px){.admin-control-hub{
    right:14px!important;
    bottom:86px!important;
  }
.admin-control-menu{
    width:min(250px,calc(100vw - 28px))!important;
  }}
@media (min-width:1601px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - var(--responsive-sidebar-width,260px) - 32px)!important;
    max-width:none!important;
    min-width:0!important;
    margin-left:16px!important;
    margin-right:16px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
#page-calendar,#page-calendar.active,#page-calendar .schedule-layout,#page-calendar .calendar-card{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }}
@media (min-width:1181px) and (max-width:1600px){body:has(#page-calendar.active) .app-shell{
    width:calc(100vw - var(--responsive-sidebar-width,232px) - 24px)!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
    padding-left:0!important;
    padding-right:0!important;
  }}
html[data-theme="dark"] .sidebar-brand-footer.archive-brand img,html[data-theme="dark"] #page-home .home-archive-logo{
  content:url("assets/jinho-archive-logo-dark.webp")!important;
  filter:drop-shadow(0 3px 12px rgba(255,255,255,.06))!important;
  opacity:1!important;
}
html[data-theme="dark"] #page-home{
  color:#f1f3f6!important;
}
html[data-theme="dark"] #page-home.home-v2,html[data-theme="dark"] #page-home .home-v2-grid,html[data-theme="dark"] #page-home .home-v2-stats{
  background:transparent!important;
}
html[data-theme="dark"] #page-home .home-v2-hero,html[data-theme="dark"] #page-home .home-v2-hero:not(.is-live),html[data-theme="dark"] #page-home .home-v2-hero.is-live{
  background:
    radial-gradient(circle at 86% 24%,rgba(236,49,93,.13),transparent 31%),
    radial-gradient(circle at 18% 110%,rgba(102, 114, 132, .10),transparent 42%),
    linear-gradient(135deg,#131b27 0%,#0f1520 58%,#1c1519 100%)!important;
  border:1px solid #263242!important;
  color:#f6f7f9!important;
  box-shadow:0 20px 52px rgba(0,0,0,.30)!important;
}
html[data-theme="dark"] #page-home .home-v2-hero:not(.is-live)::after{
  color:rgba(255,255,255,.035)!important;
}
html[data-theme="dark"] #page-home .home-v2-hero-copy{
  background:transparent!important;
}
html[data-theme="dark"] #page-home .home-archive-tagline,html[data-theme="dark"] #page-home .home-date,html[data-theme="dark"] #page-home .home-date small{
  color:#a0a8b3!important;
}
html[data-theme="dark"] #page-home .home-date span{
  color:#a9d29f!important;
}
html[data-theme="dark"] #page-home .panel,html[data-theme="dark"] #page-home .home-v2-card,html[data-theme="dark"] #page-home .home-v2-today,html[data-theme="dark"] #page-home .home-v2-week,html[data-theme="dark"] #page-home .home-v2-vod,html[data-theme="dark"] #page-home .home-v2-live-members,html[data-theme="dark"] #page-home .home-v2-shortcuts{
  background:#131b27!important;
  border-color:#263242!important;
  color:#f1f3f6!important;
  box-shadow:0 14px 38px rgba(0,0,0,.22)!important;
}
html[data-theme="dark"] #page-home .home-v2-stats article,html[data-theme="dark"] #page-home .home-v2-upcoming-row,html[data-theme="dark"] #page-home .home-v2-next-event,html[data-theme="dark"] #page-home .home-v2-live-member,html[data-theme="dark"] #page-home .home-v2-shortcut-grid > *,html[data-theme="dark"] #page-home #homeRecentVodList .home-vod-row,html[data-theme="dark"] #page-home .home-timeline-row,html[data-theme="dark"] #page-home .home-memo-row{
  background:#182231!important;
  border-color:#334154!important;
  color:#f1f3f6!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-home #homeRecentVodList .home-vod-row.is-featured{
  background:#182231!important;
}
html[data-theme="dark"] #page-home .home-vod-thumb,html[data-theme="dark"] #page-home .home-v2-live-member-thumb{
  background:#0f1520!important;
}
html[data-theme="dark"] #page-home .home-v2-stats i,html[data-theme="dark"] #page-home .home-v2-dday-badge,html[data-theme="dark"] #page-home .home-v2-shortcut-grid i{
  background:#2b2025!important;
  color:#ff7595!important;
}
html[data-theme="dark"] #page-home .home-v2-status,html[data-theme="dark"] #page-home .home-v2-hero.is-live .home-v2-status{
  background:#182231!important;
  border-color:#334154!important;
  color:#f1f3f6!important;
  box-shadow:0 10px 26px rgba(0,0,0,.24)!important;
}
html[data-theme="dark"] #page-home .home-v2-status strong,html[data-theme="dark"] #page-home .home-v2-status b,html[data-theme="dark"] #page-home .home-section-head h2,html[data-theme="dark"] #page-home .home-v2-card strong,html[data-theme="dark"] #page-home .home-v2-card b{
  color:#f1f3f6!important;
}
html[data-theme="dark"] #page-home .home-v2-status small,html[data-theme="dark"] #page-home .home-v2-card small,html[data-theme="dark"] #page-home .home-v2-card p,html[data-theme="dark"] #page-home .home-v2-stats span{
  color:#a0a8b3!important;
}
html[data-theme="dark"] #page-home .text-btn{
  color:#e45b7a!important;
}
html[data-theme="dark"] #page-home [style*="background: white"],html[data-theme="dark"] #page-home [style*="background:#fff"],html[data-theme="dark"] #page-home [style*="background: #fff"]{
  background:#182231!important;
  color:#f1f3f6!important;
}
html[data-theme="dark"] .sidebar-brand-footer.archive-brand{
  background:transparent!important;
}
@media (min-width:1601px){body:has(#page-calendar.active) .app-shell{
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
    padding-left:0!important;
    padding-right:0!important;
  }
#page-calendar,#page-calendar.active,#page-calendar .schedule-layout,#page-calendar .calendar-card,#page-calendar .calendar-stage{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style]{
    grid-template-columns:minmax(0,1fr)!important;
  }}
@media (min-width:901px){body:has(#page-calendar.active) > main.shell.app-shell{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0 var(--responsive-page-gutter,18px) 44px!important;
  }
#page-calendar,#page-calendar.active{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
#page-calendar .schedule-layout,#page-calendar .schedule-layout[style],body.memo-panel-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.v5-memo-open #page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
#calendarMemoDrawer,#calendarNewsDrawer,#page-calendar .portal-side-right{
    display:none!important;
  }
#page-calendar .calendar-card,#page-calendar .modern-calendar{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    justify-self:stretch!important;
  }
#page-calendar .calendar-table-scroll,#page-calendar .calendar-table-inner,#page-calendar .weekday-row,#page-calendar .calendar-stage,#page-calendar .calendar-grid{
    width:100%!important;
    max-width:none!important;
  }
#page-calendar .calendar-grid{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    grid-template-rows:repeat(6,minmax(148px,auto))!important;
    min-height:888px!important;
    align-content:stretch!important;
  }
#page-calendar .day{
    min-width:0!important;
    min-height:148px!important;
  }}
@media (min-width:901px) and (max-width:1180px){#page-calendar .calendar-table-scroll{
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
#page-calendar .calendar-table-inner{
    width:980px!important;
    min-width:980px!important;
  }
#page-calendar .weekday-row,#page-calendar .calendar-grid{
    width:980px!important;
    min-width:980px!important;
    grid-template-columns:repeat(7,minmax(140px,1fr))!important;
  }}
#page-calendar .event-pill.category-dimmed{
  opacity:.24!important;
  filter:grayscale(.55) saturate(.55)!important;
  transform:none!important;
}
#page-calendar .event-pill.category-focused{
  opacity:1!important;
  filter:none!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--event) 72%,transparent),0 7px 18px color-mix(in srgb,var(--event) 16%,transparent)!important;
  position:relative!important;
  z-index:2!important;
}
#page-calendar .event-pill.dimmed:not(.category-focused){
  opacity:.24!important;
  filter:grayscale(.55) saturate(.55)!important;
}
.event-popover-layer{position:fixed;inset:0;z-index:1760;pointer-events:none}
.event-popover-layer[hidden]{display:none!important}
.event-popover{position:fixed;width:min(420px,calc(100vw - 28px));max-height:min(72vh,650px);overflow:auto;pointer-events:auto;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:22px;background:color-mix(in srgb,var(--panel) 97%,#fff 3%);color:var(--text);box-shadow:0 24px 70px rgba(15, 21, 32, .24);padding:20px 20px 0;opacity:0;transform:translateY(8px) scale(.985);transition:opacity .16s ease,transform .16s ease;scrollbar-width:thin;overscroll-behavior:contain}
.event-popover-layer.is-open .event-popover{opacity:1;transform:none}
.event-popover-grab{display:none}
.event-popover-close{position:absolute;right:14px;top:13px;width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:var(--panel2);color:var(--text);font-size:21px;line-height:1;cursor:pointer;display:grid;place-items:center}
.event-popover-date{padding-right:46px;color:var(--muted);font-size:14px;font-weight:800;letter-spacing:-.01em}
.event-popover-tags{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 9px}
.event-popover-tags span{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--tag) 60%,var(--line));background:color-mix(in srgb,var(--tag) 14%,var(--panel));color:var(--text);font-size:12px;font-weight:900}
.event-popover h2{margin:0 0 11px;font-size:22px;line-height:1.2;letter-spacing:-.045em;color:var(--text)}
.event-popover-memo{margin:0 0 14px;padding:12px 14px;border-radius:14px;background:var(--panel2);color:color-mix(in srgb,var(--text) 86%,var(--muted));font-size:14px;line-height:1.7;word-break:keep-all;overflow-wrap:anywhere}
.event-popover-participants{display:flex;gap:10px;overflow-x:auto;margin:2px -2px 14px;padding:3px 2px 5px;scrollbar-width:thin}
.event-popover-participants a{flex:0 0 52px;min-width:0;color:inherit;text-decoration:none;text-align:center}
.event-popover-participants img{display:block;width:44px;height:44px;margin:0 auto 4px;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--primary) 45%,#fff);background:var(--panel2)}
.event-popover-participants span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;color:var(--muted)}
.event-popover-image{margin:0 0 14px;overflow:hidden;border-radius:14px;border:1px solid var(--line);background:var(--panel2)}
.event-popover-image img{display:block;width:100%;max-height:170px;object-fit:contain;background:transparent}
.event-popover-notice{display:grid;gap:5px;margin:0 0 14px;padding:13px 14px;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--primary) 7%,var(--panel2))}
.event-popover-notice small{color:var(--primary);font-size:12px;font-weight:950;letter-spacing:.13em}
.event-popover-notice strong{font-size:14px;color:var(--text)}
.event-popover-notice p{display:-webkit-box;margin:0;color:var(--muted);font-size:14px;line-height:1.6;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}
.event-popover-notice a{justify-self:start;color:var(--primary);font-size:13px;font-weight:900;text-decoration:none}
.event-popover-actions{position:sticky;bottom:0;display:flex;gap:7px;align-items:center;margin:5px -20px 0;padding:12px 20px 16px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(12px)}
.event-popover-actions .btn{min-height:36px;font-size:13px}
.event-popover-actions #eventPopoverEdit{margin-left:auto}
.event-pill.event-detail-anchor{z-index:8;box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 78%,#fff),0 7px 20px rgba(0,0,0,.14)!important;transform:translateY(-1px)}
.day.event-detail-day{position:relative;z-index:5;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 48%,transparent)}
[data-theme="dark"] .event-popover{background:#131b27;border-color:#334154;box-shadow:0 30px 80px rgba(0,0,0,.52)}
[data-theme="dark"] .event-popover-actions{background:rgba(19, 27, 39, .94)}
[data-theme="dark"] .event-popover-memo,[data-theme="dark"] .event-popover-close{background:#182231}
@media(max-width:760px){html.event-popover-open{overflow:hidden}
.event-popover-layer{display:flex;align-items:flex-end;pointer-events:auto;padding:0;background:rgba(9, 13, 20, .28);backdrop-filter:blur(2px)}
.event-popover{position:relative!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;width:100%;max-height:78dvh;border-radius:22px 22px 0 0;border-left:0;border-right:0;border-bottom:0;padding:12px 16px 0;transform:translateY(26px);box-shadow:0 -18px 54px rgba(0,0,0,.24)}
.event-popover-layer.is-open .event-popover{transform:translateY(0)}
.event-popover-grab{display:block;width:36px;height:4px;margin:0 auto 10px;border-radius:999px;background:color-mix(in srgb,var(--muted) 45%,transparent)}
.event-popover-close{top:13px;right:14px}
.event-popover-date{padding-top:3px}
.event-popover h2{font-size:21px}
.event-popover-image img{max-height:210px}
.event-popover-actions{margin-left:-16px;margin-right:-16px;padding:11px 16px calc(14px + env(safe-area-inset-bottom))}
.event-pill.event-detail-anchor{transform:none}}
#daySummaryModal.day-summary-layer{
  background:rgba(9, 13, 20, .28)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
  padding:22px!important;
}
#daySummaryModal .day-summary-modal{
  width:min(570px,calc(100vw - 40px))!important;
  max-height:min(78vh,720px)!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:22px!important;
  display:flex!important;
  flex-direction:column!important;
  background:var(--panel)!important;
  border:1px solid var(--line)!important;
  box-shadow:0 24px 70px rgba(15, 21, 32, .22)!important;
}
#daySummaryModal .day-summary-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:17px 18px 12px!important;
  border:0!important;
  flex:0 0 auto!important;
}
#daySummaryModal .day-summary-heading{
  min-width:0!important;
  display:flex!important;
  align-items:baseline!important;
  gap:9px!important;
  flex-wrap:wrap!important;
}
#daySummaryModal .day-summary-heading h2{
  margin:0!important;
  font-size:19px!important;
  line-height:1.2!important;
  letter-spacing:-.035em!important;
  color:var(--text)!important;
}
#daySummaryModal #daySummaryMeta{
  padding:4px 8px!important;
  border-radius:999px!important;
  background:var(--panel2)!important;
  color:var(--muted)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
#daySummaryModal .day-summary-close{
  flex:0 0 34px!important;
  width:34px!important;height:34px!important;
  border:1px solid var(--line)!important;
  border-radius:50%!important;
  background:var(--panel2)!important;
  color:var(--text)!important;
  font-size:19px!important;
  line-height:1!important;
  cursor:pointer!important;
  display:grid!important;place-items:center!important;
}
#daySummaryModal .day-summary-nav{
  display:grid!important;
  grid-template-columns:36px auto 36px!important;
  justify-content:center!important;
  align-items:center!important;
  gap:7px!important;
  padding:0 18px 11px!important;
  border-bottom:1px solid var(--line)!important;
  flex:0 0 auto!important;
}
#daySummaryModal .day-summary-nav button{
  height:30px!important;
  border:1px solid var(--line)!important;
  border-radius:10px!important;
  background:var(--panel2)!important;
  color:var(--text)!important;
  font-weight:850!important;
  cursor:pointer!important;
}
#daySummaryModal .day-summary-nav button:nth-child(2){padding:0 15px!important;font-size:13px!important}
#daySummaryModal .daily-broadcast-card{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:9px!important;
  margin:12px 18px 2px!important;
  padding:10px 11px!important;
  min-height:52px!important;
  border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line))!important;
  border-radius:14px!important;
  background:color-mix(in srgb,var(--primary) 5%,var(--panel2))!important;
  flex:0 0 auto!important;
}
#daySummaryModal .daily-broadcast-card.is-empty{opacity:.72!important}
#daySummaryModal .daily-broadcast-icon{
  width:32px!important;height:32px!important;border-radius:10px!important;
  display:grid!important;place-items:center!important;
  background:color-mix(in srgb,var(--primary) 12%,var(--panel))!important;
  color:var(--primary)!important;font-size:14px!important;font-weight:900!important;
}
#daySummaryModal .daily-broadcast-copy{min-width:0!important}
#daySummaryModal .daily-broadcast-copy strong{display:block!important;color:var(--text)!important;font-size:13px!important;line-height:1.2!important}
#daySummaryModal .daily-broadcast-copy p{margin:3px 0 0!important;color:var(--muted)!important;font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#daySummaryModal .daily-vod-links{display:flex!important;gap:5px!important;align-items:center!important}
#daySummaryModal .daily-vod-links:empty{display:none!important}
#daySummaryModal .daily-vod-links .vod-detail-link{
  border:0!important;background:transparent!important;padding:5px 3px!important;
  color:var(--primary)!important;font-size:12px!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap!important;
}
#daySummaryModal .daily-broadcast-manage{
  width:30px!important;height:30px!important;border:1px solid var(--line)!important;border-radius:9px!important;
  background:var(--panel)!important;color:var(--muted)!important;font-size:17px!important;line-height:1!important;cursor:pointer!important;
  align-items:center!important;justify-content:center!important;padding:0!important;
}
#daySummaryModal .day-summary-list{
  display:grid!important;
  gap:7px!important;
  margin:0!important;
  padding:12px 18px 8px!important;
  overflow:auto!important;
  min-height:0!important;
  flex:1 1 auto!important;
  scrollbar-width:thin!important;
}
#daySummaryModal .day-summary-item{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr) 24px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:58px!important;
  padding:9px 10px!important;
  border:1px solid color-mix(in srgb,var(--event) 38%,var(--line))!important;
  border-left:4px solid var(--event)!important;
  border-radius:13px!important;
  background:color-mix(in srgb,var(--event) 8%,var(--panel2))!important;
  color:var(--text)!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:transform .14s ease,box-shadow .14s ease,background .14s ease!important;
}
#daySummaryModal .day-summary-item:hover{
  transform:translateY(-1px)!important;
  background:color-mix(in srgb,var(--event) 13%,var(--panel2))!important;
  box-shadow:0 7px 18px rgba(19, 27, 39, .08)!important;
}
#daySummaryModal .day-summary-time{
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:900!important;
  color:color-mix(in srgb,var(--event) 72%,var(--text))!important;
  white-space:nowrap!important;
}
#daySummaryModal .day-summary-copy{display:grid!important;gap:3px!important;min-width:0!important}
#daySummaryModal .day-summary-copy b{font-size:15px!important;line-height:1.25!important;font-weight:900!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--text)!important}
#daySummaryModal .day-summary-copy small{font-size:12px!important;line-height:1.3!important;color:var(--muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#daySummaryModal .day-summary-star{justify-self:end!important;font-size:17px!important;color:#a98215!important}
#daySummaryModal .day-summary-empty{
  min-height:120px!important;display:grid!important;place-content:center!important;text-align:center!important;gap:5px!important;
  border:1px dashed var(--line)!important;border-radius:14px!important;color:var(--muted)!important;
}
#daySummaryModal .day-summary-empty b{font-size:14px!important;color:var(--text)!important}
#daySummaryModal .day-summary-empty span{font-size:13px!important}
#daySummaryModal .day-summary-add{
  flex:0 0 auto!important;
  width:calc(100% - 36px)!important;
  margin:3px 18px 16px!important;
  min-height:37px!important;
  border:1px dashed color-mix(in srgb,var(--primary) 40%,var(--line))!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--primary)!important;
  font-size:13px!important;font-weight:900!important;cursor:pointer!important;
  align-items:center!important;justify-content:center!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-modal{background:#131b27!important;border-color:#263242!important;box-shadow:0 30px 90px rgba(0,0,0,.5)!important}
html[data-theme="dark"] #daySummaryModal .daily-broadcast-card{background:#182231!important;border-color:#334154!important}
html[data-theme="dark"] #daySummaryModal .day-summary-item{
  background:linear-gradient(90deg,color-mix(in srgb,var(--event) 26%,#182231),#182231 62%)!important;
  border-color:color-mix(in srgb,var(--event) 45%,#334154)!important;
  border-left-color:var(--event)!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-item:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--event) 34%,#182231),#182231 64%)!important}
@media(max-width:700px){#daySummaryModal.day-summary-layer{align-items:end!important;padding:0!important;background:rgba(9, 13, 20, .3)!important;backdrop-filter:blur(2px)!important}
#daySummaryModal .day-summary-modal{
    width:100%!important;max-width:none!important;max-height:78dvh!important;
    border-radius:22px 22px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;
  }
#daySummaryModal .day-summary-head{padding:16px 16px 10px!important}
#daySummaryModal .day-summary-heading h2{font-size:18px!important}
#daySummaryModal .day-summary-nav{padding:0 16px 10px!important}
#daySummaryModal .daily-broadcast-card{grid-template-columns:32px minmax(0,1fr) auto!important;margin:10px 14px 2px!important;padding:9px 10px!important}
#daySummaryModal .daily-broadcast-manage{display:none!important}
#daySummaryModal .day-summary-list{padding:10px 14px 7px!important}
#daySummaryModal .day-summary-item{grid-template-columns:57px minmax(0,1fr) 22px!important;min-height:56px!important;padding:8px 9px!important}
#daySummaryModal .day-summary-copy small{max-width:100%!important}
#daySummaryModal .day-summary-add{width:calc(100% - 28px)!important;margin:3px 14px calc(12px + env(safe-area-inset-bottom))!important}}
html[data-theme="dark"] #page-calendar .day:not(.outside):hover,html[data-theme="dark"] #page-calendar .day:not(.outside):focus-within,html[data-theme="dark"] #page-calendar .day.event-detail-day,html[data-theme="dark"] #page-calendar .day.today-jump{
  background:#182231!important;
  color:#e9edf2!important;
}
html[data-theme="dark"] #page-calendar .day.today:hover,html[data-theme="dark"] #page-calendar .day.today:focus-within,html[data-theme="dark"] #page-calendar .day.today.event-detail-day,html[data-theme="dark"] #page-calendar .day.today.today-jump{
  background:linear-gradient(180deg,#30284a,#182231)!important;
}
html[data-theme="dark"] #page-calendar .day.today-jump{
  animation:todayPulseDark 1.35s ease!important;
}
@keyframes todayPulseDark{
  0%,100%{box-shadow:inset 0 0 0 3px var(--primary)}
  35%{box-shadow:inset 0 0 0 4px var(--primary),0 0 0 10px color-mix(in srgb,var(--primary) 20%,transparent)}
}
html[data-theme="dark"] #page-calendar .event-pill.event-detail-anchor{
  box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 72%,#a0a8b3),0 7px 20px rgba(0,0,0,.28)!important;
}
#daySummaryModal .day-summary-item.has-members{
  min-height:78px!important;
}
#daySummaryModal .day-summary-members{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  margin-top:4px!important;
  overflow:hidden!important;
}
#daySummaryModal .day-summary-member{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
  max-width:78px!important;
  color:var(--muted)!important;
}
#daySummaryModal .day-summary-member img{
  width:23px!important;
  height:23px!important;
  flex:0 0 23px!important;
  border-radius:50%!important;
  object-fit:cover!important;
  border:1.5px solid color-mix(in srgb,var(--event) 44%,var(--line))!important;
  background:var(--panel2)!important;
}
#daySummaryModal .day-summary-member em{
  display:block!important;
  min-width:0!important;
  max-width:48px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:12px!important;
  line-height:1!important;
  font-style:normal!important;
  font-weight:800!important;
}
#daySummaryModal .day-summary-member-more{
  display:grid!important;
  place-items:center!important;
  flex:0 0 25px!important;
  width:25px!important;
  height:25px!important;
  border:1px solid var(--line)!important;
  border-radius:50%!important;
  background:var(--panel2)!important;
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:900!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-member img{
  border-color:color-mix(in srgb,var(--event) 56%,#334154)!important;
  background:#182231!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-member-more{
  background:#182231!important;
  border-color:#334154!important;
  color:#cfd6df!important;
}
@media(max-width:700px){#daySummaryModal .day-summary-item.has-members{min-height:74px!important}
#daySummaryModal .day-summary-members{gap:5px!important}
#daySummaryModal .day-summary-member{max-width:64px!important}
#daySummaryModal .day-summary-member img{width:22px!important;height:22px!important;flex-basis:22px!important}
#daySummaryModal .day-summary-member em{max-width:36px!important;font-size:12px!important}}
#eventModal .event-category-field{align-self:start}
#eventModal .event-category-picker{
  display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;padding:10px;
  border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel2) 72%,transparent)
}
#eventModal .event-category-option{
  appearance:none;border:1px solid color-mix(in srgb,var(--pick) 58%,var(--line));
  background:color-mix(in srgb,var(--pick) 8%,var(--panel));color:var(--text);
  min-height:34px;padding:7px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;
  font:inherit;font-size:14px;font-weight:850;cursor:pointer;transition:.16s ease;box-shadow:none
}
#eventModal .event-category-option i{width:8px;height:8px;border-radius:50%;background:var(--pick);flex:0 0 auto}
#eventModal .event-category-option b{font-size:13px;color:inherit}
#eventModal .event-category-option:hover{transform:translateY(-1px);border-color:var(--pick)}
#eventModal .event-category-option.active{
  border-color:var(--pick);background:color-mix(in srgb,var(--pick) 18%,var(--panel));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--pick) 16%,transparent)
}
html[data-theme="dark"] #eventModal .event-category-picker{background:#131b27;border-color:#334154}
html[data-theme="dark"] #eventModal .event-category-option{background:color-mix(in srgb,var(--pick) 13%,#131b27);border-color:color-mix(in srgb,var(--pick) 48%,#334154);color:#eef5ef}
html[data-theme="dark"] #eventModal .event-category-option.active{background:color-mix(in srgb,var(--pick) 28%,#131b27);border-color:color-mix(in srgb,var(--pick) 78%,#8d98a8)}
#eventPopoverTags{flex-wrap:wrap}
#eventPopoverTags .sub{opacity:.9}
@media(max-width:700px){#eventModal .event-category-picker{gap:6px;padding:8px}
#eventModal .event-category-option{min-height:32px;padding:6px 9px;font-size:13px}}
#page-stats{width:100%;max-width:none!important}
#page-stats .page-section-head{max-width:1600px;margin-left:auto;margin-right:auto}
#statsPageMount{width:100%;max-width:1600px;margin:0 auto;padding-bottom:80px}
.stats-dashboard-v2{display:grid;gap:18px;width:100%}
.stats-v2-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:4px 2px 8px}
.stats-v2-toolbar h2{font-size:26px;line-height:1.1;margin:5px 0 7px;letter-spacing:-.045em}
.stats-v2-toolbar p{margin:0;color:var(--muted);font-size:14px}
.stats-v2-month-nav{display:flex;align-items:center;gap:7px}
.stats-v2-month-nav button,.stats-v2-toggle button{border:1px solid var(--line);background:var(--panel);color:var(--text);font:inherit;font-weight:900;cursor:pointer;transition:.18s}
.stats-v2-month-nav button{min-width:42px;height:42px;border-radius:13px;padding:0 13px}
.stats-v2-month-nav button:nth-child(2){min-width:72px;font-size:13px}
.stats-v2-month-nav button:hover,.stats-v2-toggle button:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));transform:translateY(-1px)}
.stats-v2-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.stats-v2-kpi{position:relative;min-height:146px;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);overflow:hidden;display:grid;align-content:start;gap:5px}
.stats-v2-kpi:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--kpi,#8d98a8)}
.stats-v2-kpi.tone-1{--kpi:#8d98a8}
.stats-v2-kpi.tone-2{--kpi:#9a83d7}
.stats-v2-kpi.tone-3{--kpi:#5fa6b9}
.stats-v2-kpi.tone-4{--kpi:#d7a95c}
.stats-v2-kpi>span{font-size:13px;font-weight:900;color:var(--muted)}
.stats-v2-kpi>strong{font-size:24px;line-height:1.1;letter-spacing:-.04em;margin-top:5px}
.stats-v2-kpi>em{font-style:normal;font-size:12px;font-weight:900;color:var(--muted);margin-top:5px}
.stats-v2-kpi>em.up{color:#4f9d69}
.stats-v2-kpi>em.down{color:#d56c74}
.stats-v2-kpi>small{font-size:12px;color:var(--muted);margin-top:2px}
.stats-v2-main-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(330px,.8fr);gap:16px}
.stats-v2-main-grid.lower{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.stats-v2-panel{border:1px solid var(--line);border-radius:22px;background:var(--panel);padding:22px;min-width:0}
.stats-v2-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}
.stats-v2-panel-head span{display:block;font-size:12px;letter-spacing:.09em;font-weight:900;color:var(--muted)}
.stats-v2-panel-head h3{font-size:18px;margin:4px 0 0;letter-spacing:-.03em}
.stats-v2-panel-head>small{color:var(--muted);font-size:12px;margin-top:4px}
.stats-v2-toggle{display:flex;padding:3px;border-radius:12px;background:var(--panel2);border:1px solid var(--line)}
.stats-v2-toggle button{height:30px;padding:0 10px;border:0;background:transparent;border-radius:8px;font-size:12px}
.stats-v2-toggle button.active{background:var(--text);color:var(--panel);box-shadow:0 3px 10px rgba(0,0,0,.12)}
.stats-v2-flow-chart{height:255px;display:grid;grid-template-columns:repeat(6,minmax(52px,1fr));align-items:end;gap:13px;padding:20px 4px 0}
.stats-v2-flow-item{height:100%;display:grid;grid-template-rows:22px minmax(0,1fr) 22px;gap:7px;text-align:center;align-items:end}
.stats-v2-flow-value{font-size:12px;color:var(--muted);font-weight:800}
.stats-v2-flow-track{height:100%;min-height:160px;border-radius:11px 11px 7px 7px;background:var(--panel2);display:flex;align-items:flex-end;padding:4px;overflow:hidden}
.stats-v2-flow-track i{display:block;width:100%;min-height:0;border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 72%,#9f8bd4),color-mix(in srgb,var(--accent) 82%,#667284));transition:height .25s ease}
.stats-v2-flow-item>b{font-size:12px;color:var(--muted)}
.stats-v2-pattern-highlight{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:17px}
.stats-v2-pattern-highlight>div{padding:14px;border-radius:15px;background:var(--panel2);border:1px solid var(--line)}
.stats-v2-pattern-highlight small{display:block;color:var(--muted);font-size:12px}
.stats-v2-pattern-highlight strong{display:block;margin-top:6px;font-size:17px}
.stats-v2-weekdays{height:140px;display:grid;grid-template-columns:repeat(7,1fr);gap:7px;align-items:end}
.stats-v2-weekdays>div{height:100%;display:grid;grid-template-rows:16px 1fr 15px;gap:4px;text-align:center}
.stats-v2-weekdays span,.stats-v2-weekdays em{font-size:12px;color:var(--muted);font-style:normal}
.stats-v2-weekdays i{display:flex;align-items:flex-end;justify-content:center;background:var(--panel2);border-radius:7px;padding:3px}
.stats-v2-weekdays i b{display:block;width:100%;min-height:2px;border-radius:5px;background:#788291}
.stats-v2-note{display:block;margin-top:12px;color:var(--muted);font-size:12px;line-height:1.5}
.stats-v2-content-body{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:center}
.stats-v2-donut{width:180px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative}
.stats-v2-donut:after{content:"";position:absolute;inset:30px;border-radius:50%;background:var(--panel)}
.stats-v2-donut>span{position:relative;z-index:1;display:grid;text-align:center}
.stats-v2-donut b{font-size:24px}
.stats-v2-donut small{font-size:12px;color:var(--muted)}
.stats-v2-content-rank{display:grid;gap:9px}
.stats-v2-content-rank>div{display:grid;grid-template-columns:9px minmax(0,1fr) auto 38px;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.stats-v2-content-rank>div:last-child{border-bottom:0}
.stats-v2-content-rank i{width:8px;height:8px;border-radius:50%;background:var(--cat)}
.stats-v2-content-rank span{font-size:13px;font-weight:800}
.stats-v2-content-rank b{font-size:13px}
.stats-v2-content-rank small{text-align:right;color:var(--muted);font-size:12px}
.stats-v2-ranking{display:grid;gap:7px}
.stats-v2-ranking button{width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:11px;border-radius:13px;text-align:left;cursor:pointer}
.stats-v2-ranking button>b{width:25px;height:25px;border-radius:8px;background:var(--text);color:var(--panel);display:grid;place-items:center;font-size:12px}
.stats-v2-ranking span{display:grid;gap:2px}
.stats-v2-ranking span strong{font-size:13px}
.stats-v2-ranking span small{font-size:12px;color:var(--muted)}
.stats-v2-ranking em{font-style:normal;font-size:13px;font-weight:900}
.stats-v2-ranking button:hover{border-color:var(--accent);transform:translateY(-1px)}
.stats-v2-month-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
.stats-v2-month-grid button{position:relative;min-height:100px;padding:14px;border-radius:15px;border:1px solid var(--line);background:var(--panel2);color:var(--text);display:grid;align-content:start;text-align:left;gap:5px;overflow:hidden;cursor:pointer}
.stats-v2-month-grid button>span{font-size:12px;color:var(--muted);font-weight:900}
.stats-v2-month-grid button>strong{font-size:16px}
.stats-v2-month-grid button>small{font-size:12px;color:var(--muted)}
.stats-v2-month-grid button>i{position:absolute;left:0;bottom:0;height:3px;width:var(--month-fill);background:var(--accent);opacity:.65}
.stats-v2-month-grid button.active{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);background:color-mix(in srgb,var(--accent) 9%,var(--panel2))}
.stats-v2-month-grid button:hover{border-color:var(--accent)}
.stats-v2-record-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.stats-v2-record-grid article{padding:17px;border-radius:16px;background:var(--panel2);border:1px solid var(--line);display:grid;gap:5px}
.stats-v2-record-grid span{font-size:12px;color:var(--muted);font-weight:800}
.stats-v2-record-grid strong{font-size:18px}
.stats-v2-record-grid small{font-size:12px;color:var(--muted)}
.stats-v2-empty{min-height:140px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:13px;background:var(--panel2);border-radius:15px}
html[data-theme="dark"] .stats-v2-kpi,html[data-theme="dark"] .stats-v2-panel{background:#0f1520;border-color:#263242}
html[data-theme="dark"] .stats-v2-flow-track,html[data-theme="dark"] .stats-v2-pattern-highlight>div,html[data-theme="dark"] .stats-v2-weekdays i,html[data-theme="dark"] .stats-v2-ranking button,html[data-theme="dark"] .stats-v2-month-grid button,html[data-theme="dark"] .stats-v2-record-grid article,html[data-theme="dark"] .stats-v2-toggle{background:#182231;border-color:#334154}
html[data-theme="dark"] .stats-v2-donut:after{background:#0f1520}
@media(max-width:1180px){.stats-v2-kpis{grid-template-columns:repeat(2,1fr)}
.stats-v2-main-grid,.stats-v2-main-grid.lower{grid-template-columns:1fr}
.stats-v2-month-grid{grid-template-columns:repeat(4,1fr)}
.stats-v2-record-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){#statsPageMount{padding-bottom:100px}
.stats-v2-toolbar{align-items:flex-start;flex-direction:column}
.stats-v2-toolbar h2{font-size:22px}
.stats-v2-kpis{grid-template-columns:1fr 1fr;gap:9px}
.stats-v2-kpi{min-height:122px;padding:16px}
.stats-v2-kpi>strong{font-size:19px}
.stats-v2-panel{padding:16px;border-radius:18px}
.stats-v2-flow-chart{min-width:520px;height:225px}
.stats-v2-flow{overflow-x:auto}
.stats-v2-pattern-highlight{grid-template-columns:1fr 1fr}
.stats-v2-content-body{grid-template-columns:1fr}
.stats-v2-donut{width:150px;margin:0 auto}
.stats-v2-month-grid{grid-template-columns:repeat(2,1fr)}
.stats-v2-record-grid{grid-template-columns:1fr 1fr}
.stats-v2-panel-head{flex-wrap:wrap}
.stats-v2-panel-head>small{width:100%}}
@media(max-width:430px){.stats-v2-kpis{grid-template-columns:1fr}
.stats-v2-pattern-highlight,.stats-v2-record-grid{grid-template-columns:1fr}}
#page-home .home-final *{box-sizing:border-box}
#page-home .home-final button,#page-home .home-final a{font:inherit}
#page-home .home-final-live-thumb{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
#page-home .home-final-live-thumb[hidden]{display:none!important}
#page-home .home-final-live-thumb{z-index:1!important;background:#090d14!important}
/* v2214 · activity admin diagnostics + live duration/viewers */
.activity-status-row.admin-only{display:none!important}
body.admin-mode .activity-status-row.admin-only{display:flex!important}
#page-live .live-card-live-metrics,#view-live .live-card-live-metrics,.live-hub-page .live-card-live-metrics{display:flex!important;align-items:center!important;gap:6px!important;margin-top:5px!important;min-width:0!important;flex-wrap:wrap!important}
#page-live .live-card-live-metrics span,#view-live .live-card-live-metrics span,.live-hub-page .live-card-live-metrics span{display:inline-flex!important;align-items:center!important;min-height:20px!important;padding:3px 7px!important;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line))!important;border-radius:999px!important;background:color-mix(in srgb,var(--primary) 8%,var(--panel2))!important;color:var(--muted)!important;font-size:12px!important;line-height:1!important;font-weight:800!important;white-space:nowrap!important}
#page-live .live-card-live-metrics span[data-live-viewers],#view-live .live-card-live-metrics span[data-live-viewers],.live-hub-page .live-card-live-metrics span[data-live-viewers]{color:var(--text)!important}
@media(max-width:680px){#page-live .live-card-live-metrics,#view-live .live-card-live-metrics,.live-hub-page .live-card-live-metrics{gap:4px!important;margin-top:4px!important}
#page-live .live-card-live-metrics span,#view-live .live-card-live-metrics span,.live-hub-page .live-card-live-metrics span{font-size:12px!important;padding:3px 6px!important}}
/* v2215 · live card: Chuntaverse-style elapsed time only */
#page-live .live-card-live-metrics,#view-live .live-card-live-metrics,.live-hub-page .live-card-live-metrics{display:none!important}
#page-live .live-card-inline-time.is-duration,#view-live .live-card-inline-time.is-duration,.live-hub-page .live-card-inline-time.is-duration{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  color:var(--muted)!important;
  font-size:12px!important;
  font-weight:750!important;
}
#page-live .live-card-inline-time.is-duration::before,#view-live .live-card-inline-time.is-duration::before,.live-hub-page .live-card-inline-time.is-duration::before{
  content:"";
  width:11px;height:11px;
  flex:0 0 11px;
  border:1.6px solid currentColor;
  border-radius:50%;
  opacity:.82;
  background:linear-gradient(currentColor,currentColor) 50% 27%/1px 3px no-repeat,linear-gradient(currentColor,currentColor) 62% 58%/3px 1px no-repeat;
}
#page-live .live-card-copy>p,#view-live .live-card-copy>p,.live-hub-page .live-card-copy>p{margin-top:5px!important;margin-bottom:0!important}
/* v2216 live cleanup + custom offline image */
.live-offline-image-field small,.live-offline-image-file small{font-size:12px;font-weight:700;opacity:.72}
.live-offline-image-file input[type="file"]{max-width:100%;font-size:13px}
.live-offline-image-state{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-style:normal}
.live-offline-image-field,.live-offline-image-file{grid-column:span 2}
.live-member-manager-form-actions{grid-column:1/-1;justify-content:flex-end}
@media(max-width:900px){.live-offline-image-field,.live-offline-image-file{grid-column:1/-1}}
/* v2228 · cloud/login recovery */
.admin-login-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:4px}
.admin-recovery-box{margin-top:12px;padding:12px;border:1px solid rgba(255,79,125,.24);border-radius:14px;background:rgba(255,79,125,.05)}
.admin-recovery-box p{margin:5px 0 9px;font-size:14px;color:var(--muted,#777)}
.admin-recovery-box>div{display:flex;gap:8px}
.admin-recovery-box input{min-width:0;flex:1}
#page-home .home-final-live-thumb[hidden]{display:none!important}
/* v2235 · 홈 LIVE 썸네일 실제 표시 크기 축소 */
#page-home .home-v2-hero.is-live .home-v2-live-media{
  background:color-mix(in srgb,var(--panel) 82%,#ebe7e9 18%)!important;
}
html[data-theme="dark"] #page-home .home-v2-hero.is-live .home-v2-live-media{
  background:#090d14!important;
}
/* === 2026-08-17 CALENDAR UI CONCEPT A : minimal dark, feature-preserving === */
@media (min-width: 901px){#page-calendar{--cal-pink:#ff4f83;--cal-bg:#0b0e13;--cal-panel:#10141b;--cal-panel2:#151a22;--cal-line:#272d37;--cal-muted:#8d96a5}
html:not([data-theme="dark"]) #page-calendar{--cal-bg:#f7f7fa;--cal-panel:#fff;--cal-panel2:#f5f6f9;--cal-line:#e2e5eb;--cal-muted:#7d8490}
#page-calendar .schedule-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 310px!important;gap:16px!important;align-items:start!important;max-width:1540px;margin:0 auto;padding:24px 24px 56px}
#page-calendar .calendar-card{min-height:0!important;border-radius:18px!important;padding:24px!important;background:var(--cal-panel)!important;border:1px solid var(--cal-line)!important;box-shadow:none!important;overflow:hidden}
#page-calendar .modern-calendar:before{display:none!important}
#page-calendar .calendar-head{display:flex!important;align-items:flex-end!important;border-bottom:1px solid var(--cal-line)!important;padding:0 0 18px!important;margin:0 0 14px!important}
#page-calendar .month-control{display:grid!important;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:12px!important;flex:1}
#page-calendar .month-control>div{padding-left:4px}
#page-calendar .calendar-kicker{display:block!important;font-size:11px!important;letter-spacing:.16em!important;color:var(--cal-pink)!important;font-weight:900!important;margin:0 0 5px!important}
#page-calendar .month-control h1{font-size:34px!important;line-height:1!important;letter-spacing:-.03em;margin:0!important}
#page-calendar .month-control p{display:none!important}
#page-calendar .circle{width:38px!important;height:38px!important;border-radius:12px!important;background:var(--cal-panel2)!important;border-color:var(--cal-line)!important;font-size:20px!important}
#page-calendar .head-actions{margin-left:14px;align-items:center}
#page-calendar .head-actions .btn{border-radius:999px!important;background:var(--cal-panel2)!important;border-color:var(--cal-line)!important;padding:9px 13px!important}
#page-calendar #todayButton{background:var(--cal-pink)!important;border-color:var(--cal-pink)!important;color:#fff!important}
#page-calendar .filters{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;gap:7px!important;margin:0 0 14px!important;padding:2px 0 8px!important}
#page-calendar .filters::-webkit-scrollbar{display:none}
#page-calendar .filter{flex:0 0 auto!important;border-radius:999px!important;padding:7px 11px!important;font-size:12px!important;background:var(--cal-panel2)!important;border:1px solid var(--cal-line)!important;box-shadow:none!important}
#page-calendar .filter.active{background:color-mix(in srgb,var(--filter) 24%,var(--cal-panel2))!important;border-color:color-mix(in srgb,var(--filter) 72%,var(--cal-line))!important;box-shadow:none!important}
#page-calendar .calendar-table-scroll{overflow:visible!important}
#page-calendar .calendar-table-inner{min-width:0!important}
#page-calendar .weekday-row{gap:6px!important;margin-bottom:6px}
#page-calendar .weekday-row span{padding:8px 4px!important;font-size:12px!important;color:var(--cal-muted)!important}
#page-calendar .weekday-row span:first-child{color:#ff668e!important}
.weekday-row span:last-child{color:#64b6ff!important}
#page-calendar .calendar-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important;border:0!important;min-height:0!important;background:transparent!important}
#page-calendar .day{position:relative;min-height:128px!important;padding:9px!important;border:1px solid var(--cal-line)!important;border-radius:10px!important;background:var(--cal-bg)!important;overflow:hidden;transition:border-color .16s ease,transform .16s ease,background .16s ease}
#page-calendar .day:hover{border-color:#48515f!important;background:var(--cal-panel2)!important;transform:translateY(-1px)}
#page-calendar .day.outside{opacity:.28!important}
#page-calendar .day.today{box-shadow:inset 0 0 0 1px var(--cal-pink)!important;border-color:var(--cal-pink)!important}
#page-calendar .date-num{font-size:13px!important;margin:0 0 7px!important}
#page-calendar .events{gap:5px!important}
#page-calendar .event-pill{min-height:0!important;border-radius:7px!important;border-width:1px!important;border-left-width:3px!important;padding:6px 27px 6px 7px!important;font-size:12px!important;line-height:1.25!important;background:color-mix(in srgb,var(--event) 13%,var(--cal-panel2))!important}
#page-calendar .event-pill time{font-size:10px!important;margin-bottom:2px;color:color-mix(in srgb,var(--event) 80%,white)!important;font-weight:900}
#page-calendar .event-star{right:4px!important;top:4px!important;font-size:12px!important}
#page-calendar .calendar-footer-note{display:flex!important;justify-content:center;gap:28px!important;margin-top:13px!important;padding:10px 12px!important;border:1px solid var(--cal-line)!important;border-radius:10px!important;background:var(--cal-bg)!important;color:var(--cal-muted)!important;font-size:11px!important}
#page-calendar .portal-side-right{display:flex!important;gap:12px!important;position:sticky;top:90px}
#page-calendar .portal-side-right>.panel{border-radius:16px!important;padding:16px!important;background:var(--cal-panel)!important;border:1px solid var(--cal-line)!important;box-shadow:none!important}
#page-calendar .portal-side-right .eyebrow{color:var(--cal-pink)!important;font-size:10px!important}
#page-calendar .portal-side-right h2{font-size:18px!important}
#page-calendar .mobile-info-tabs{display:none!important}}

/* ===== up-rank.css ===== */
.up-rank-page{padding:22px 28px 40px;}
.up-rank-shell{max-width:1560px;margin:0 auto;display:grid;gap:16px;}
.up-rank-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 2px 4px;}
.up-rank-head .eyebrow{display:block;color:#ef476f;font-size:13px;font-weight:900;letter-spacing:.16em;margin-bottom:7px;}
.up-rank-head h1{margin:0;font-size:26px;line-height:1.05;letter-spacing:-.04em;}
.up-rank-head p{margin:8px 0 0;color:var(--muted,#667284);font-size:14px;}
.up-rank-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.up-rank-head-actions a,.up-rank-head-actions button{min-height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--line,#dfe4ea);background:var(--panel,#fff);color:inherit;font-weight:800;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.up-rank-head-actions .is-disabled{opacity:.45;pointer-events:none;}
.up-rank-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.up-rank-summary article{border:1px solid var(--line,#dfe4ea);background:var(--panel,#fff);border-radius:18px;padding:18px 20px;min-height:104px;display:flex;flex-direction:column;justify-content:center;}
.up-rank-summary span{font-size:13px;color:var(--muted,#788291);font-weight:800;}
.up-rank-summary strong{font-size:22px;letter-spacing:-.04em;margin-top:5px;}
.up-rank-panel{border:1px solid var(--line,#dfe4ea);background:var(--panel,#fff);border-radius:20px;overflow:hidden;}
.up-rank-search{height:40px;border:1px solid var(--line,#dfe4ea);background:var(--surface,#f6f7f9);color:inherit;border-radius:12px;padding:0 14px;outline:none;}
.up-rank-search:focus{border-color:#ef476f;box-shadow:0 0 0 3px rgba(239,71,111,.12);}
.up-rank-status{justify-self:end;font-size:14px;font-weight:800;color:var(--muted,#667284);}
.up-rank-status[data-tone="ok"]{color:#68b26f}
.up-rank-status[data-tone="error"]{color:#ef476f}
.up-rank-status[data-tone="loading"]{color:#e8b24e}
.up-rank-refresh{height:38px;border-radius:11px;border:1px solid var(--line,#dfe4ea);background:var(--surface,#f6f7f9);color:inherit;font-weight:900;padding:0 12px;cursor:pointer;}
.up-rank-source{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;color:var(--muted,#667284);font-size:14px;border-bottom:1px solid var(--line,#dfe4ea);}
.up-rank-source b{color:inherit;font-weight:900;}
.up-rank-sort-button{border:0;background:none;color:inherit;font:inherit;font-weight:900;cursor:pointer;padding:0;white-space:nowrap}
.up-rank-sort-button:hover{color:#ef476f}
.up-rank-rank{text-align:center}
.up-rank-rank>b{display:inline-flex;width:31px;height:31px;border-radius:10px;align-items:center;justify-content:center;background:var(--surface,#f1f3f6);font-size:15px}
.up-rank-avatar-fallback{width:38px;height:38px;border-radius:12px;object-fit:cover;flex:0 0 auto}
.up-rank-avatar-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef476f,#7c3aed);color:white;font-weight:900}
.up-rank-settings-modal{max-width:590px}
.up-rank-settings-modal .up-rank-setting-switch{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px;border:1px solid var(--line,#dfe4ea);border-radius:14px}
.up-rank-settings-modal .up-rank-setting-switch input{width:20px;height:20px}
.up-rank-settings-help{font-size:14px;color:var(--muted,#667284);line-height:1.6}
.up-rank-settings-status{min-height:20px;font-size:14px;color:var(--muted,#667284);}
html.dark .up-rank-page,[data-theme="dark"] .up-rank-page{color:#f6f7f9}
.dark .up-rank-summary article,.dark .up-rank-panel,.dark .up-rank-head-actions a,.dark .up-rank-head-actions button,[data-theme="dark"] .up-rank-summary article,[data-theme="dark"] .up-rank-panel,[data-theme="dark"] .up-rank-head-actions a,[data-theme="dark"] .up-rank-head-actions button{background:#0f1520;border-color:#263242}
.dark .up-rank-search,.dark .up-rank-refresh,[data-theme="dark"] .up-rank-search,[data-theme="dark"] .up-rank-refresh{background:#182231;border-color:#334154;color:#f6f7f9}
.dark .up-rank-source,[data-theme="dark"] .up-rank-source{border-color:#263242}
.dark .up-rank-rank>b,[data-theme="dark"] .up-rank-rank>b{background:#182231}
.dark .up-rank-sort-button,[data-theme="dark"] .up-rank-sort-button{color:#dfe4ea}
@media(max-width:900px){.up-rank-page{padding:14px 12px 90px}
.up-rank-head{align-items:flex-start;flex-direction:column}
.up-rank-summary{grid-template-columns:1fr 1fr}
.up-rank-summary article:last-child{grid-column:1/-1}
.up-rank-status{grid-column:1/-1;grid-row:2;justify-self:start}
.up-rank-source{align-items:flex-start;flex-direction:column}
.up-rank-rank{position:absolute;right:12px;top:12px;width:auto!important}}
.up-rank-summary{grid-template-columns:repeat(4,minmax(0,1fr));}
.up-rank-filterbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 16px;border-bottom:1px solid var(--line,#dfe4ea);background:var(--surface,#f6f7f9)}
.up-rank-filterbar button{height:34px;padding:0 11px;border:1px solid var(--line,#dfe4ea);border-radius:999px;background:var(--panel,#fff);color:inherit;font-size:13px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.up-rank-filterbar button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--surface,#e9edf2);color:var(--muted,#667284);font-size:12px}
.up-rank-filterbar button:hover{border-color:#ef476f}
.up-rank-filterbar button.active{border-color:#ef476f;background:rgba(239,71,111,.09);color:#d63363;box-shadow:0 0 0 2px rgba(239,71,111,.07) inset}
.up-rank-filterbar button.active span{background:#ef476f;color:#fff}
.up-rank-crew-pins{padding:13px 16px 14px;border-bottom:1px solid var(--line,#dfe4ea);background:linear-gradient(180deg,rgba(239,71,111,.025),transparent)}
.up-rank-crew-pins-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:9px}
.up-rank-crew-pins-head>div{display:flex;align-items:baseline;gap:8px}
.up-rank-crew-pins-head span{font-size:12px;letter-spacing:.14em;font-weight:900;color:#ef476f}
.up-rank-crew-pins-head strong{font-size:14px}
.up-rank-crew-pins-head small{font-size:12px;color:var(--muted,#667284)}
.up-rank-crew-pin-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}
.up-rank-pin-card{position:relative;min-width:184px;max-width:230px;display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto auto;column-gap:9px;align-items:center;padding:10px 11px;border:1px solid var(--line,#dfe4ea);border-radius:14px;background:var(--panel,#fff);color:inherit;text-decoration:none;flex:0 0 auto;overflow:hidden}
.up-rank-pin-card>img,.up-rank-pin-card>span{grid-row:1/4;width:36px;height:36px;border-radius:11px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef476f,#7c3aed);color:#fff;font-size:13px;font-weight:900}
.up-rank-pin-card em{font-style:normal;font-size:12px;font-weight:900;letter-spacing:.03em}
.up-rank-pin-card strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.up-rank-pin-card small{font-size:12px;color:var(--muted,#667284);font-weight:900}
.up-rank-pin-card.is-jinho{border-color:rgba(239,71,111,.42);background:linear-gradient(135deg,rgba(239,71,111,.10),var(--panel,#fff) 62%)}
.up-rank-pin-card.is-jinho em{color:#ef476f}
.up-rank-pin-card.is-jindegi{border-color:rgba(46,125,50,.38);background:linear-gradient(135deg,rgba(46,125,50,.10),var(--panel,#fff) 62%)}
.up-rank-pin-card.is-jindegi em{color:#2e7d32}
.up-rank-crew-badge{display:inline-flex;vertical-align:middle;align-items:center;height:18px;padding:0 6px;border-radius:999px;font-style:normal;font-size:12px;font-weight:900;margin-left:5px;transform:translateY(-1px)}
.up-rank-crew-badge.is-jinho{background:rgba(239,71,111,.12);color:#d63363;border:1px solid rgba(239,71,111,.23)}
.up-rank-crew-badge.is-jindegi{background:rgba(46,125,50,.12);color:#2e7d32;border:1px solid rgba(46,125,50,.22)}
.up-rank-setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.up-rank-settings-modal .up-rank-setting-switch.compact{padding:12px 13px}
.up-rank-settings-modal .up-rank-setting-switch.compact span{display:flex;flex-direction:column;gap:3px}
.up-rank-settings-modal .up-rank-setting-switch.compact small{font-size:12px;color:var(--muted,#667284);line-height:1.45}
.dark .up-rank-filterbar,[data-theme="dark"] .up-rank-filterbar{background:#0f1520;border-color:#263242}
.dark .up-rank-filterbar button,[data-theme="dark"] .up-rank-filterbar button{background:#182231;border-color:#334154;color:#dfe4ea}
.dark .up-rank-filterbar button span,[data-theme="dark"] .up-rank-filterbar button span{background:#263242;color:#a0a8b3}
.dark .up-rank-filterbar button.active,[data-theme="dark"] .up-rank-filterbar button.active{background:rgba(239,71,111,.13);border-color:#ef476f;color:#ff8aa5}
.dark .up-rank-filterbar button.active span,[data-theme="dark"] .up-rank-filterbar button.active span{background:#ef476f;color:#fff}
.dark .up-rank-crew-pins,[data-theme="dark"] .up-rank-crew-pins{background:linear-gradient(180deg,rgba(239,71,111,.035),transparent);border-color:#263242}
.dark .up-rank-pin-card,[data-theme="dark"] .up-rank-pin-card{background:#131b27;border-color:#334154}
.dark .up-rank-pin-card.is-jinho,[data-theme="dark"] .up-rank-pin-card.is-jinho{background:linear-gradient(135deg,rgba(239,71,111,.12),#131b27 62%)}
.dark .up-rank-pin-card.is-jindegi,[data-theme="dark"] .up-rank-pin-card.is-jindegi{background:linear-gradient(135deg,rgba(70,160,78,.12),#131b27 62%)}
.dark .up-rank-pin-card.is-jindegi em,[data-theme="dark"] .up-rank-pin-card.is-jindegi em{color:#80cc87}
.dark .up-rank-crew-badge.is-jinho,[data-theme="dark"] .up-rank-crew-badge.is-jinho{color:#ff8aa5;background:rgba(239,71,111,.12)}
.dark .up-rank-crew-badge.is-jindegi,[data-theme="dark"] .up-rank-crew-badge.is-jindegi{color:#80cc87;background:rgba(70,160,78,.12)}
@media(max-width:900px){.up-rank-summary{grid-template-columns:1fr 1fr}
.up-rank-summary article:last-child{grid-column:auto}
.up-rank-filterbar{padding:10px;gap:6px;overflow-x:auto;flex-wrap:nowrap}
.up-rank-filterbar button{flex:0 0 auto}
.up-rank-crew-pins{padding:11px 10px}
.up-rank-crew-pins-head{align-items:flex-start;flex-direction:column;gap:3px}
.up-rank-crew-pins-head>div{display:block}
.up-rank-crew-pins-head span{display:block;margin-bottom:2px}
.up-rank-pin-card{min-width:168px}
.up-rank-setting-grid{grid-template-columns:1fr}}
@keyframes upRankRiseFlash{0%{background:rgba(47,158,68,.17)}42%{background:rgba(47,158,68,.075)}100%{background:transparent}}
@keyframes upRankFallFlash{0%{background:rgba(229,72,97,.15)}42%{background:rgba(229,72,97,.065)}100%{background:transparent}}
@keyframes upRankRiseFlashDark{0%{background:rgba(72,176,83,.18)}100%{background:transparent}}
@keyframes upRankFallFlashDark{0%{background:rgba(239,71,111,.17)}100%{background:transparent}}
@media(max-width:900px){.up-rank-status{grid-column:1/-1;grid-row:2;justify-self:start}}
.up-rank-pin-card{min-width:220px;max-width:290px;grid-template-rows:auto auto;}
.up-rank-pin-card>img,.up-rank-pin-card>span{grid-row:1/3;}
.up-rank-pin-card>em{grid-column:2;grid-row:1;}
.up-rank-pin-mainline{grid-column:2;grid-row:2;display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;white-space:nowrap;}
.up-rank-pin-mainline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.25;font-weight:900;}
.up-rank-pin-mainline b{flex:0 0 auto;font-size:14px;line-height:1.25;font-weight:900;color:var(--muted,#667284);}
.up-rank-pin-card.is-jinho .up-rank-pin-mainline b{color:#d63363;}
.up-rank-pin-card.is-jindegi .up-rank-pin-mainline b{color:#2e7d32;}
.dark .up-rank-pin-card.is-jinho .up-rank-pin-mainline b,[data-theme="dark"] .up-rank-pin-card.is-jinho .up-rank-pin-mainline b{color:#ff8aa5;}
.dark .up-rank-pin-card.is-jindegi .up-rank-pin-mainline b,[data-theme="dark"] .up-rank-pin-card.is-jindegi .up-rank-pin-mainline b{color:#80cc87;}
@media(max-width:900px){.up-rank-pin-card{min-width:205px;max-width:260px;}
.up-rank-pin-mainline{gap:6px;}
.up-rank-pin-mainline strong,.up-rank-pin-mainline b{font-size:14px;}}
.up-rank-page{
  --crew-jinho:#c2185b;
  --crew-jinho-accent:#e83e78;
  --crew-jinho-bg:#fff0f5;
  --crew-jinho-bg-strong:#ffe3ed;
  --crew-jinho-border:#f08aad;
  --crew-jindegi:#176b35;
  --crew-jindegi-accent:#2f9650;
  --crew-jindegi-bg:#eef9f1;
  --crew-jindegi-bg-strong:#daf2e1;
  --crew-jindegi-border:#69b77d;
}
.dark .up-rank-page,[data-theme="dark"] .up-rank-page{
  --crew-jinho:#ff8fb0;
  --crew-jinho-accent:#ff5f91;
  --crew-jinho-bg:rgba(255,77,132,.145);
  --crew-jinho-bg-strong:rgba(255,77,132,.22);
  --crew-jinho-border:#ff709d;
  --crew-jindegi:#ff9a93;
  --crew-jindegi-accent:#ff554d;
  --crew-jindegi-bg:rgba(232,64,55,.16);
  --crew-jindegi-bg-strong:rgba(232,64,55,.245);
  --crew-jindegi-border:#ff716a;
}
.up-rank-pin-card.is-jinho{
  border:2px solid var(--crew-jinho-border);
  background:linear-gradient(135deg,var(--crew-jinho-bg-strong),#fff 72%);
  box-shadow:inset 4px 0 0 var(--crew-jinho-accent);
}
.up-rank-pin-card.is-jindegi{
  border:2px solid var(--crew-jindegi-border);
  background:linear-gradient(135deg,var(--crew-jindegi-bg-strong),#fff 72%);
  box-shadow:inset 4px 0 0 var(--crew-jindegi-accent);
}
.up-rank-pin-card.is-jinho>em,.up-rank-pin-card.is-jinho .up-rank-pin-mainline b{color:var(--crew-jinho)}
.up-rank-pin-card.is-jindegi>em,.up-rank-pin-card.is-jindegi .up-rank-pin-mainline b{color:var(--crew-jindegi)}
.dark .up-rank-pin-card.is-jinho,[data-theme="dark"] .up-rank-pin-card.is-jinho{
  border-color:var(--crew-jinho-border);
  background:linear-gradient(135deg,var(--crew-jinho-bg-strong),#131b27 72%);
  box-shadow:inset 4px 0 0 var(--crew-jinho-accent);
}
.dark .up-rank-pin-card.is-jindegi,[data-theme="dark"] .up-rank-pin-card.is-jindegi{
  border-color:var(--crew-jindegi-border);
  background:linear-gradient(135deg,var(--crew-jindegi-bg-strong),#131b27 72%);
  box-shadow:inset 4px 0 0 var(--crew-jindegi-accent);
}
.up-rank-crew-badge.is-jinho{
  color:var(--crew-jinho);
  background:var(--crew-jinho-bg-strong);
  border:1px solid var(--crew-jinho-border);
}
.up-rank-crew-badge.is-jindegi{
  color:var(--crew-jindegi);
  background:var(--crew-jindegi-bg-strong);
  border:1px solid var(--crew-jindegi-border);
}
.up-rank-filterbar button[data-up-rank-filter="jinho"].active{
  color:var(--crew-jinho);
  border-color:var(--crew-jinho-border);
  background:var(--crew-jinho-bg-strong);
}
.up-rank-filterbar button[data-up-rank-filter="jindegi"].active{
  color:var(--crew-jindegi);
  border-color:var(--crew-jindegi-border);
  background:var(--crew-jindegi-bg-strong);
}
.up-rank-filterbar button[data-up-rank-filter="jinho"].active span{background:var(--crew-jinho-accent);color:#fff}
.up-rank-filterbar button[data-up-rank-filter="jindegi"].active span{background:var(--crew-jindegi-accent);color:#fff}
.up-rank-page{
  --rank-bg:#f1f3f6;
  --rank-card:#ffffff;
  --rank-card-2:#f6f7f9;
  --rank-line:#dfe4ea;
  --rank-text:#131b27;
  --rank-muted:#667284;
  --rank-accent:#ef476f;
  --rank-accent-soft:rgba(239,71,111,.09);
  --rank-green:#2f9e44;
  --rank-red:#e54861;
  padding:26px 30px 56px;
}
.dark .up-rank-page,[data-theme="dark"] .up-rank-page{
  --rank-bg:#090d14;
  --rank-card:#0f1520;
  --rank-card-2:#131b27;
  --rank-line:#263242;
  --rank-text:#f6f7f9;
  --rank-muted:#8d98a8;
  --rank-accent:#ff6f93;
  --rank-accent-soft:rgba(255,111,147,.11);
  --rank-green:#79d884;
  --rank-red:#ff7b8e;
}
.up-rank-shell{max-width:1500px;gap:20px}
.up-rank-head{padding:8px 4px 0;align-items:center}
.up-rank-head .eyebrow{font-size:12px;letter-spacing:.2em;color:var(--rank-accent)}
.up-rank-head h1{font-size:30px;color:var(--rank-text)}
.up-rank-head p{font-size:15px;line-height:1.55;color:var(--rank-muted);max-width:680px}
.up-rank-head-actions a,.up-rank-head-actions button{border-color:var(--rank-line);background:var(--rank-card);border-radius:13px;min-height:42px;padding:0 15px;color:var(--rank-text)}
.up-rank-head-actions a:hover,.up-rank-head-actions button:hover{border-color:var(--rank-accent);color:var(--rank-accent)}
.up-rank-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.up-rank-summary article{position:relative;min-height:116px;border:1px solid var(--rank-line);background:var(--rank-card);border-radius:18px;padding:20px 22px;overflow:hidden}
.up-rank-summary article::after{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:var(--rank-accent);opacity:.85}
.up-rank-summary span{font-size:12px;letter-spacing:.08em;color:var(--rank-muted);font-weight:900}
.up-rank-summary strong{font-size:23px;color:var(--rank-text);letter-spacing:-.04em;margin-top:7px}
.up-rank-summary small{font-size:13px;color:var(--rank-muted);margin-top:6px}
.up-rank-section-head,.up-rank-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.up-rank-section-head>div>span,.up-rank-panel-head>div>span{display:block;color:var(--rank-accent);font-size:12px;font-weight:950;letter-spacing:.17em;margin-bottom:5px}
.up-rank-section-head h2,.up-rank-panel-head h2{margin:0;color:var(--rank-text);font-size:20px;letter-spacing:-.035em}
.up-rank-section-head p,.up-rank-panel-head p{margin:5px 0 0;color:var(--rank-muted);font-size:14px}
.up-rank-section-head>p{margin:0 0 2px}
.up-rank-podium{border:1px solid var(--rank-line);background:var(--rank-card);border-radius:22px;padding:20px}
.up-rank-podium-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:16px;align-items:stretch;border:1px solid var(--rank-line);border-radius:18px;overflow:hidden;background:var(--rank-card-2)}
.up-rank-podium-card{position:relative;min-height:124px;border:0;border-right:1px solid var(--rank-line);border-radius:0;background:var(--rank-card-2);color:var(--rank-text);text-decoration:none;padding:18px 20px;display:grid;grid-template-columns:auto 58px minmax(0,1fr) auto;grid-template-rows:1fr;align-items:center;gap:14px;transition:background .18s ease,color .18s ease}
.up-rank-podium-card:last-child{border-right:0}
.up-rank-podium-card:hover{background:color-mix(in srgb,var(--rank-card-2) 86%,var(--rank-accent) 14%)}
.up-rank-podium-card.rank-1{min-height:124px;background:linear-gradient(90deg,rgba(226,174,47,.10),var(--rank-card-2) 42%)}
.up-rank-podium-card.rank-2{background:linear-gradient(90deg,rgba(145,157,170,.08),var(--rank-card-2) 42%)}
.up-rank-podium-card.rank-3{background:linear-gradient(90deg,rgba(183,116,58,.08),var(--rank-card-2) 42%)}
.up-rank-podium-place{position:static;width:54px;min-width:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--rank-muted)}
.up-rank-podium-medal{font-size:18px;line-height:1}
.up-rank-podium-rank{display:inline-flex;align-items:baseline;gap:2px;font-size:13px;font-weight:950;color:var(--rank-muted);white-space:nowrap}
.up-rank-podium-rank>b{font-size:21px;line-height:1;letter-spacing:-.05em;color:var(--rank-text)}
.up-rank-podium-move{margin:2px 0 0;padding:3px 6px;border-radius:999px;font-size:12px;font-weight:950;line-height:1}
.up-rank-podium-move.up{color:var(--rank-green);background:rgba(47,158,68,.12)}
.up-rank-podium-move.down{color:var(--rank-red);background:rgba(229,72,97,.12)}
.up-rank-podium-avatar{width:58px;height:58px;border-radius:18px;overflow:hidden;background:var(--rank-card);border:1px solid var(--rank-line);display:flex;align-items:center;justify-content:center}
.up-rank-podium-avatar img,.up-rank-podium-avatar-fallback{width:100%;height:100%;object-fit:cover;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:950}
.up-rank-podium-avatar-fallback{background:linear-gradient(135deg,var(--rank-accent),#7c3aed);color:#fff}
.up-rank-podium-user{min-width:0;padding:0}
.up-rank-podium-user strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.up-rank-podium-user small{display:block;color:var(--rank-muted);font-size:13px;margin-top:4px}
.up-rank-podium-up{display:flex;align-items:baseline;justify-content:flex-end;gap:5px;white-space:nowrap;padding-left:8px}
.up-rank-podium-up strong{font-size:22px;letter-spacing:-.04em;color:var(--rank-text)}
.up-rank-podium-up span{font-size:13px;color:var(--rank-accent);font-weight:950}
.up-rank-panel{border:0;background:transparent;border-radius:0;overflow:visible}
.up-rank-panel-head{padding:2px 2px 12px}
.up-rank-live-tools{display:flex;align-items:center;gap:10px}
.up-rank-status{display:inline-flex;align-items:center;gap:7px;justify-self:auto;font-size:13px;font-weight:900;color:var(--rank-muted)}
.up-rank-status::before{content:"";width:8px;height:8px;border-radius:50%;background:#8d98a8;box-shadow:0 0 0 3px rgba(141, 152, 168, .12)}
.up-rank-status[data-tone="ok"]{color:var(--rank-green)}
.up-rank-status[data-tone="ok"]::before{background:var(--rank-green);box-shadow:0 0 0 3px rgba(47,158,68,.14)}
.up-rank-status[data-tone="loading"]{color:#d89b2b}
.up-rank-status[data-tone="loading"]::before{background:#d89b2b}
.up-rank-status[data-tone="error"]{color:var(--rank-red)}
.up-rank-status[data-tone="error"]::before{background:var(--rank-red)}
.up-rank-refresh{height:38px;padding:0 13px;border:1px solid var(--rank-line);border-radius:11px;background:var(--rank-card);color:var(--rank-text)}
.up-rank-refresh:hover{border-color:var(--rank-accent);color:var(--rank-accent)}
.up-rank-controls{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;padding:14px 16px 10px;background:var(--rank-card);border:1px solid var(--rank-line);border-bottom:0;border-radius:18px 18px 0 0}
.up-rank-search{height:44px;border:1px solid var(--rank-line);background:var(--rank-card-2);color:var(--rank-text);border-radius:12px;padding:0 15px;font-size:14px}
.up-rank-search::placeholder{color:var(--rank-muted)}
.up-rank-search:focus{border-color:var(--rank-accent);box-shadow:0 0 0 3px var(--rank-accent-soft)}
.up-rank-sort-button{height:44px;min-width:108px;padding:0 14px;border:1px solid var(--rank-line);border-radius:12px;background:var(--rank-card-2);color:var(--rank-text);font-size:14px;font-weight:950}
.up-rank-sort-button:hover{border-color:var(--rank-accent);color:var(--rank-accent)}
.up-rank-filterbar{padding:0 16px 12px;background:var(--rank-card);border-left:1px solid var(--rank-line);border-right:1px solid var(--rank-line);border-bottom:0;gap:7px}
.up-rank-filterbar button{height:34px;padding:0 12px;border-color:var(--rank-line);background:var(--rank-card-2);font-size:13px;color:var(--rank-text)}
.up-rank-filterbar button span{background:var(--rank-card);color:var(--rank-muted)}
.up-rank-filterbar button.active{background:var(--rank-accent-soft);border-color:var(--rank-accent);color:var(--rank-accent);box-shadow:none}
.up-rank-filterbar button.active span{background:var(--rank-accent);color:#fff}
.up-rank-source{padding:10px 16px 13px;background:var(--rank-card);border:1px solid var(--rank-line);border-top:0;border-radius:0 0 18px 18px;color:var(--rank-muted);font-size:13px}
.up-rank-source b{color:var(--rank-text)}
.up-rank-crew-pins{margin-top:12px;padding:15px 16px;border:1px solid var(--rank-line);border-radius:18px;background:var(--rank-card)}
.up-rank-crew-pins-head{margin-bottom:11px;align-items:center}
.up-rank-crew-pins-head span{color:var(--rank-accent);font-size:12px}
.up-rank-crew-pins-head strong{font-size:14px;color:var(--rank-text)}
.up-rank-crew-pins-head small{font-size:12px;color:var(--rank-muted)}
.up-rank-crew-pin-list{gap:10px}
.up-rank-pin-card{min-width:230px;max-width:310px;padding:11px 12px;border-radius:15px;background:var(--rank-card-2);border-color:var(--rank-line)}
.up-rank-rank{text-align:left;white-space:nowrap}
.up-rank-rank>b{display:inline;font-size:21px;line-height:1;letter-spacing:-.05em;background:none!important;color:var(--rank-text)!important;width:auto;height:auto;border-radius:0;box-shadow:none!important}
.up-rank-avatar-fallback{width:44px;height:44px;border-radius:14px}
.up-rank-crew-badge{height:19px;padding:0 7px;font-size:12px;margin-left:6px}
.dark .up-rank-summary article,.dark .up-rank-podium,.dark .up-rank-controls,.dark .up-rank-filterbar,.dark .up-rank-source,.dark .up-rank-crew-pins,[data-theme="dark"] .up-rank-summary article,[data-theme="dark"] .up-rank-podium,[data-theme="dark"] .up-rank-controls,[data-theme="dark"] .up-rank-filterbar,[data-theme="dark"] .up-rank-source,[data-theme="dark"] .up-rank-crew-pins{background:var(--rank-card);border-color:var(--rank-line)}
.dark .up-rank-search,.dark .up-rank-refresh,[data-theme="dark"] .up-rank-search,[data-theme="dark"] .up-rank-refresh{background:var(--rank-card-2);border-color:var(--rank-line);color:var(--rank-text)}
.dark .up-rank-filterbar button,[data-theme="dark"] .up-rank-filterbar button{background:var(--rank-card-2);border-color:var(--rank-line);color:var(--rank-text)}
.dark .up-rank-filterbar button span,[data-theme="dark"] .up-rank-filterbar button span{background:#182231;color:var(--rank-muted)}
.dark .up-rank-pin-card,[data-theme="dark"] .up-rank-pin-card{background:var(--rank-card-2);border-color:var(--rank-line)}
.dark .up-rank-podium-card,[data-theme="dark"] .up-rank-podium-card{background:var(--rank-card-2);border-color:var(--rank-line)}
@media(max-width:1100px){.up-rank-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.up-rank-page{padding:16px 12px 92px}
.up-rank-head{gap:14px}
.up-rank-head h1{font-size:26px}
.up-rank-summary{grid-template-columns:1fr 1fr;gap:8px}
.up-rank-summary article{min-height:102px;padding:16px 17px}
.up-rank-summary strong{font-size:20px}
.up-rank-podium{padding:15px 12px}
.up-rank-section-head{align-items:flex-start;flex-direction:column;gap:4px}
.up-rank-podium-list{grid-template-columns:1fr;gap:0;border-radius:16px}
.up-rank-podium-card,.up-rank-podium-card.rank-1{min-height:96px;grid-template-columns:46px 50px minmax(0,1fr) auto;padding:12px 13px;border-right:0;border-bottom:1px solid var(--rank-line)}
.up-rank-podium-card:last-child{border-bottom:0}
.up-rank-podium-avatar{width:50px;height:50px;border-radius:15px}
.up-rank-podium-place{width:46px;min-width:46px}
.up-rank-podium-medal{font-size:17px}
.up-rank-podium-rank>b{font-size:18px}
.up-rank-podium-up strong{font-size:19px}
.up-rank-panel-head{align-items:flex-start;flex-direction:column;gap:10px;padding:0 2px 10px}
.up-rank-live-tools{width:100%;justify-content:space-between}
.up-rank-controls{grid-template-columns:1fr auto;padding:10px;border-radius:16px 16px 0 0}
.up-rank-search{min-width:0}
.up-rank-sort-button{min-width:92px;padding:0 10px}
.up-rank-filterbar{padding:0 10px 10px;overflow-x:auto;flex-wrap:nowrap}
.up-rank-source{padding:9px 10px 11px}
.up-rank-crew-pins{padding:12px;margin-top:9px}
.up-rank-rank{right:12px;top:11px}
.up-rank-rank>b{font-size:20px}
.up-rank-avatar-fallback{width:42px;height:42px}}
@media(max-width:560px){.up-rank-summary{grid-template-columns:1fr 1fr}
.up-rank-summary article{min-height:94px;padding:14px}
.up-rank-summary strong{font-size:19px}
.up-rank-summary small{font-size:12px}
.up-rank-controls{grid-template-columns:1fr}
.up-rank-sort-button{width:100%}}
.up-rank-podium-inline{
  margin-top:12px;
  border-radius:18px;
  padding:15px 16px 16px;
}
.up-rank-podium-inline .up-rank-section-head h2{font-size:18px}
.up-rank-podium-inline .up-rank-section-head p{font-size:12px}
.up-rank-podium-inline .up-rank-podium-list{margin-top:11px}
.up-rank-pin-card{
  font:inherit;
  text-align:left;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
}
.up-rank-pin-card:focus-visible{outline:2px solid var(--rank-accent);outline-offset:3px}
.up-rank-pin-card:hover{transform:translateY(-1px);filter:brightness(1.02)}
.up-rank-pin-card:active{transform:translateY(0)}
.up-rank-podium-card.is-scroll-target{
  position:relative;
  z-index:2;
  box-shadow:inset 0 0 0 2px var(--rank-accent),0 0 0 4px var(--rank-accent-soft);
  animation:upRankLocateCard 1.05s ease-in-out 2;
}
@keyframes upRankLocateCard{
  0%,100%{filter:none}
  50%{filter:brightness(1.08)}
}
@media(max-width:900px){.up-rank-podium-inline{padding:13px 10px 14px}
.up-rank-podium-inline .up-rank-section-head{align-items:flex-start}}
/* v2227 · 업 순위 FHD 가로 잘림 방지 / 가용 폭 기준 반응형 */
#page-uprank.up-rank-page{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:hidden!important;
}
#page-uprank .up-rank-shell{
  width:min(100%,1500px)!important;
  max-width:100%!important;
  min-width:0!important;
  margin-inline:auto!important;
}
#page-uprank .up-rank-head,#page-uprank .up-rank-summary,#page-uprank .up-rank-panel,#page-uprank .up-rank-controls,#page-uprank .up-rank-filterbar,#page-uprank .up-rank-source,#page-uprank .up-rank-crew-pins,#page-uprank .up-rank-podium,#page-uprank .up-rank-podium-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
#page-uprank .up-rank-summary>article,#page-uprank .up-rank-podium-card,#page-uprank .up-rank-podium-user,#page-uprank .up-rank-panel-head>div,#page-uprank .up-rank-head>div{
  min-width:0!important;
}
#page-uprank .up-rank-crew-pin-list{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow-x:auto!important;
  overscroll-behavior-x:contain;
}
/* 사이드바가 유지되는 FHD/작은 데스크톱에서 내부 요소가 화면 밖으로 밀리지 않게 압축 */
@media (min-width:901px) and (max-width:1920px){#page-uprank.up-rank-page{padding:22px clamp(12px,1vw,20px) 48px!important}
#page-uprank .up-rank-shell{gap:16px!important}
#page-uprank .up-rank-head{gap:14px!important}
#page-uprank .up-rank-head h1{font-size:clamp(29px,1.8vw,34px)!important}
#page-uprank .up-rank-head-actions{min-width:0!important;flex:0 1 auto!important}
#page-uprank .up-rank-summary{gap:9px!important}
#page-uprank .up-rank-summary article{padding:16px 17px!important;min-height:104px!important}
#page-uprank .up-rank-summary strong{font-size:clamp(21px,1.45vw,26px)!important;white-space:normal!important;overflow-wrap:anywhere!important}
#page-uprank .up-rank-summary small{font-size:12px!important}
#page-uprank .up-rank-podium{padding:16px!important}
#page-uprank .up-rank-podium-card,#page-uprank .up-rank-podium-card.rank-1{
    min-height:108px!important;
    padding:14px 12px!important;
    grid-template-columns:46px 50px minmax(0,1fr) auto!important;
    gap:10px!important;
  }
#page-uprank .up-rank-podium-place{width:46px!important;min-width:46px!important}
#page-uprank .up-rank-podium-avatar{width:50px!important;height:50px!important;border-radius:15px!important}
#page-uprank .up-rank-podium-user strong{font-size:15px!important}
#page-uprank .up-rank-podium-user small{font-size:12px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#page-uprank .up-rank-podium-up{padding-left:3px!important;gap:3px!important}
#page-uprank .up-rank-podium-up strong{font-size:19px!important}
#page-uprank .up-rank-podium-up span{font-size:12px!important}}
/* FHD에서도 실제 사용 가능 폭이 좁아지는 창/확대 배율 대응 */
@media (min-width:901px) and (max-width:1500px){#page-uprank .up-rank-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#page-uprank .up-rank-podium-list{grid-template-columns:1fr!important}
#page-uprank .up-rank-podium-card,#page-uprank .up-rank-podium-card.rank-1{
    grid-template-columns:46px 50px minmax(0,1fr) auto!important;
    border-right:0!important;
    border-bottom:1px solid var(--rank-line)!important;
  }
#page-uprank .up-rank-podium-card:last-child{border-bottom:0!important}}
/* v2247: 업 순위 게시글 탭 · 여러 게시글을 등록해 전환할 수 있습니다. */
.up-rank-board-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.up-rank-board-tabs[hidden]{display:none}
.up-rank-board-tab{border:1px solid var(--line,#eadfe3);background:#fff;color:#6b555e;border-radius:999px;
  padding:7px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:.15s;max-width:240px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.up-rank-board-tab:hover{border-color:#e6a5b8;color:#c2185b}
.up-rank-board-tab.is-active{background:#fdeaf1;border-color:#e6a5b8;color:#c2185b}
body.dark .up-rank-board-tab{background:transparent;border-color:#3a2c33;color:#b9a7ae}
body.dark .up-rank-board-tab.is-active{background:#40202c;border-color:#8d4560;color:#ff9ec0}
.up-rank-board-editor{display:flex;flex-direction:column;gap:8px}
.up-rank-board-editor-label{font-weight:700;font-size:13px}
.up-rank-board-editor-label small{display:block;font-weight:500;color:#7a666d;margin-top:2px}
.up-rank-board-row{display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr) auto;gap:6px;align-items:center}
.up-rank-board-row input{width:100%;min-width:0}
.up-rank-board-remove{border:1px solid var(--line,#eadfe3);background:#fff;border-radius:8px;
  padding:6px 10px;cursor:pointer;font-size:13px;color:#a8404f;white-space:nowrap}
.up-rank-board-remove:hover{background:#fdeaf1}
.up-rank-board-add{align-self:flex-start;border:1px dashed #e6a5b8;background:transparent;color:#c2185b;
  border-radius:8px;padding:7px 12px;cursor:pointer;font-size:13px;font-weight:700}
.up-rank-board-add:hover{background:#fdeaf1}
.up-rank-board-add:disabled{opacity:.45;cursor:not-allowed}
@media (max-width:640px){.up-rank-board-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'label remove' 'url url'}
.up-rank-board-row input:first-child{grid-area:label}
.up-rank-board-row input:nth-child(2){grid-area:url}
.up-rank-board-remove{grid-area:remove}}
/* ===== v2248 · 업 순위 스코어보드 리디자인 =====
   이 화면의 유일한 목적: 누가 통과선 안에 있고, 컷까지 몇 UP이며, 시간이 얼마 남았는가.
   그래서 (1) 다열 배치로 스크롤을 없애고 (2) 통과선을 실제 선으로 긋고
   (3) 컷 근처 참가자에게 UP 차이를 직접 보여줍니다. 댓글 본문은 title 속성으로만 남깁니다. */
.up-rank-page{
  --ur-live:#e4154f;      /* 진행 중 · UP */
  --ur-in:#1f9d6b;        /* 통과권 */
  --ur-bubble:#c98a17;    /* 컷 경계 */
  --ur-rail:#efe3e8;
  --ur-dim:#8b7480;
}
body.dark .up-rank-page{--ur-rail:#3a2b33;--ur-dim:#a08d97}
/* 보드: 참고 사이트처럼 세로로 이어지는 열을 가로로 나열합니다.
   column-count는 열 우선으로 흐르므로 1→9, 10→18 순서가 자연스럽게 유지됩니다. */
.ur-board-wrap{margin-top:12px}
.ur-board-head{display:none}
.ur-board{column-count:1;column-gap:16px}
@media (min-width:760px){.ur-board{column-count:2}}
@media (min-width:1220px){.ur-board{column-count:3}}
.ur-row{
  display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:10px;
  padding:9px 10px;border-bottom:1px solid var(--ur-rail);
  text-decoration:none;color:inherit;break-inside:avoid;
  transition:background .12s ease;
}
.ur-row:hover{background:color-mix(in srgb,var(--ur-live) 7%,transparent)}
.ur-row:focus-visible{outline:2px solid var(--ur-live);outline-offset:-2px;border-radius:8px}
/* 순위 숫자가 이 화면의 표제입니다. 고정폭 숫자로 자릿수가 달라도 세로선이 맞습니다. */
.ur-rank{display:flex;align-items:baseline;gap:4px}
.ur-rank b{font-size:19px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em;min-width:26px;text-align:right}
.ur-row.is-top .ur-rank b{color:var(--ur-live)}
.ur-row.rank-1 .ur-rank b{font-size:23px}
.ur-move{font-size:10px;font-weight:800;line-height:1}
.ur-move.up{color:var(--ur-in)}
.ur-move.down{color:var(--ur-dim)}
.ur-who{display:flex;align-items:center;gap:8px;min-width:0}
.ur-who img,.ur-who .up-rank-avatar-fallback{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.ur-name{min-width:0;display:flex;flex-direction:column;line-height:1.25}
.ur-name strong{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ur-name small{font-size:11px;color:var(--ur-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ur-up{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.ur-up b{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.ur-gap{font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}
.ur-gap.in{color:var(--ur-in)}
.ur-gap.out{color:var(--ur-bubble)}
/* 통과선. 이 화면의 signature입니다. 장식이 아니라 실제 경계를 그립니다. */
.ur-cutline{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  margin:6px 0;padding:5px 10px;break-inside:avoid;
  border-top:2px dashed var(--ur-bubble);
  background:color-mix(in srgb,var(--ur-bubble) 9%,transparent);
}
/* 통과선 아래는 한 단계 물러나게 해서 경계가 눈으로 읽히게 합니다. */
.ur-row.is-out{opacity:.5}
.ur-row.is-out:hover{opacity:1}
.ur-row.is-cutline{background:color-mix(in srgb,var(--ur-bubble) 12%,transparent)}
.ur-empty{padding:28px 12px;text-align:center;color:var(--ur-dim)}
.ur-empty strong{display:block;font-size:14px;color:inherit;margin-bottom:4px}
.ur-empty span{font-size:12px}
/* 마감 카운트다운 */
.ur-deadline-card strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.ur-deadline-card.is-soon strong{color:var(--ur-live)}
.ur-deadline-card.is-over{opacity:.55}
.ur-deadline-card[hidden]{display:none}
/* 설정: 게시글별 커트라인·마감 */
.up-rank-board-row{display:block;padding:10px;border:1px solid var(--line,#eadfe3);border-radius:12px;margin-bottom:8px}
.ur-board-row-main{display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr) auto;gap:6px;align-items:center}
.ur-board-row-opts{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px;padding-top:8px;border-top:1px dashed var(--ur-rail)}
.ur-opt{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700;margin:0}
.ur-opt input[type=number]{width:64px;margin:0;padding:5px 7px}
.ur-opt input[type=checkbox]{margin:0;width:auto}
.ur-opt.wide{flex:1 1 240px;flex-direction:column;align-items:stretch;gap:3px}
.ur-opt.wide small{font-weight:500;color:var(--ur-dim)}
.ur-opt input[type=datetime-local]{margin:0;padding:6px 8px}
@media (prefers-reduced-motion:reduce){.ur-row{transition:none}}
/* ============================================================
   v2248 · 업 순위 화면 정리
   이 화면의 유일한 긴장은 "커트라인 안에 드느냐"입니다.
   그래서 커트라인을 면으로 나누는 것 하나에만 힘을 주고,
   나머지 표면(요약 카드·패널·필터)은 최대한 조용하게 눌렀습니다.
   ============================================================ */
.up-rank-shell{
  --ur-ink:#17121a; --ur-muted:#6f6470; --ur-line:#e8e2e6;
  --ur-surface:#fff; --ur-canvas:#f6f4f6;
  --ur-accent:#d81b60; --ur-pass:#0f9d6a; --ur-out:#9aa0a6;
}
body.dark .up-rank-shell{
  --ur-ink:#f2e9ee; --ur-muted:#9d8f97; --ur-line:#332830;
  --ur-surface:#191319; --ur-canvas:#120e13;
  --ur-accent:#ff6f9c; --ur-pass:#3fcf95; --ur-out:#6b6169;
}
/* 요약 · 카드 4장이 각자 테두리를 갖던 것을 한 덩어리로 묶습니다.
   상자 수가 줄어드는 것만으로 화면이 훨씬 조용해집니다. */
.up-rank-shell .up-rank-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  border:1px solid var(--ur-line);border-radius:14px;
  background:var(--ur-surface);overflow:hidden;
}
.up-rank-shell .up-rank-summary article{
  min-height:0!important;padding:14px 16px!important;
  border:0!important;border-radius:0!important;
  border-left:1px solid var(--ur-line)!important;
  background:transparent!important;box-shadow:none!important;
}
.up-rank-shell .up-rank-summary article:first-child{border-left:0!important}
.up-rank-shell .up-rank-summary article::before,.up-rank-shell .up-rank-summary article::after{display:none!important}
.up-rank-shell .up-rank-summary article>span{font-size:11px;letter-spacing:.04em;color:var(--ur-muted);font-weight:700}
.up-rank-shell .up-rank-summary article>strong{
  font-size:21px;font-weight:800;color:var(--ur-ink);letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;margin:3px 0 1px;
}
.up-rank-shell .up-rank-summary article>small{font-size:11px;color:var(--ur-muted)}
@media (max-width:760px){.up-rank-shell .up-rank-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.up-rank-shell .up-rank-summary article:nth-child(-n+2){border-bottom:1px solid var(--ur-line)!important}
.up-rank-shell .up-rank-summary article:nth-child(odd){border-left:0!important}}
/* 마감 카운트다운 · 1시간 미만이면 색이 바뀝니다. */
.ur-deadline-card #upRankCountdown{
  font-variant-numeric:tabular-nums;letter-spacing:-.01em;
}
.ur-deadline-card.is-soon #upRankCountdown{color:var(--ur-accent)}
.ur-deadline-card.is-over #upRankCountdown{color:var(--ur-out)}
/* 순위 카드 · 통과 구간은 밝게, 탈락 구간은 눌러서 경계를 만듭니다. */
.up-rank-shell .ur-board{column-gap:12px}
.up-rank-shell .ur-row{
  display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;
  padding:9px 12px;margin:0 0 6px;border:1px solid var(--ur-line);border-radius:11px;
  background:var(--ur-surface);text-decoration:none;color:inherit;
  break-inside:avoid;transition:border-color .15s,transform .15s;
}
.up-rank-shell .ur-row:hover{border-color:var(--ur-accent);transform:translateY(-1px)}
.up-rank-shell .ur-rank b{
  font-size:19px;font-weight:800;color:var(--ur-ink);letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}
.up-rank-shell .ur-name strong{font-size:13px;font-weight:700}
.up-rank-shell .ur-name small{font-size:11px;color:var(--ur-muted)}
.up-rank-shell .ur-up b{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
/* 1~3위 · 메달 색은 왼쪽 얇은 띠 하나로만 표현합니다. */
.up-rank-shell .ur-row.is-top{border-left-width:3px}
.up-rank-shell .ur-row.rank-1{border-left-color:#d4a017}
.up-rank-shell .ur-row.rank-2{border-left-color:#9aa3ad}
.up-rank-shell .ur-row.rank-3{border-left-color:#b3763f}
/* 커트라인 · 이 화면의 signature.
   통과선 아래는 표면을 캔버스색으로 낮추고 흐리게 해 한눈에 갈립니다. */
.up-rank-shell .ur-row.is-cutline{
  border-color:var(--ur-pass);
  box-shadow:inset 0 -2px 0 var(--ur-pass);
}
.up-rank-shell .ur-row.is-out{
  background:var(--ur-canvas);opacity:.62;
}
.up-rank-shell .ur-row.is-out:hover{opacity:1}
.up-rank-shell .ur-gap.in{color:var(--ur-pass);font-weight:700}
.up-rank-shell .ur-gap.out{color:var(--ur-out);font-weight:700}
/* 게시글 탭 · 헤더 바로 아래에서 조용히 구분만 합니다. */
.up-rank-shell .up-rank-board-tabs{border-bottom:1px solid var(--ur-line);padding-bottom:8px;margin-bottom:12px}
@media (prefers-reduced-motion:reduce){.up-rank-shell .ur-row{transition:none}
.up-rank-shell .ur-row:hover{transform:none}}
/* ============================================================
   v2249 · 업 순위 레이아웃 재정리
   문제: 목록에 닿기까지 9개의 띠를 지나야 하고, 각 띠가 상자였습니다.
   해결: 상자를 없애고 띠를 3개로 합칩니다. 헤더 / 도구줄 / 목록.
   ============================================================ */
/* --- 1. 헤더: 눈썹 문구와 설명은 제목과 중복이라 지웁니다 --- */
.up-rank-shell .up-rank-head .eyebrow{display:none}
.up-rank-shell .up-rank-head #upRankDisplayDescription{
  font-size:12px;color:var(--ur-muted);margin:4px 0 0;
}
.up-rank-shell .up-rank-head h1{
  font-size:26px;font-weight:800;letter-spacing:-.03em;margin:0;color:var(--ur-ink);
}
.up-rank-shell .up-rank-head{
  align-items:flex-end;padding-bottom:14px;margin-bottom:0;
  border:0;background:transparent;box-shadow:none;
}
.up-rank-shell .up-rank-head-actions a,.up-rank-shell .up-rank-head-actions button{
  border:1px solid var(--ur-line);background:transparent;color:var(--ur-muted);
  border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;box-shadow:none;
}
.up-rank-shell .up-rank-head-actions a:hover,.up-rank-shell .up-rank-head-actions button:hover{border-color:var(--ur-accent);color:var(--ur-accent)}
/* --- 2. 탭: 알약 대신 밑줄. 문서 안의 탭처럼 조용하게 --- */
.up-rank-shell .up-rank-board-tabs{
  gap:2px;margin:0 0 14px;padding:0;
  border-bottom:1px solid var(--ur-line);
}
.up-rank-shell .up-rank-board-tab{
  border:0;background:transparent;border-radius:0;
  padding:9px 14px;margin-bottom:-1px;
  border-bottom:2px solid transparent;
  color:var(--ur-muted);font-size:13px;font-weight:700;
}
.up-rank-shell .up-rank-board-tab:hover{color:var(--ur-ink);background:transparent}
.up-rank-shell .up-rank-board-tab.is-active{
  background:transparent;color:var(--ur-ink);
  border-bottom-color:var(--ur-accent);
}
/* --- 3. 요약: 상자 4개 → 구분선으로 나뉜 한 줄 텍스트 --- */
.up-rank-shell .up-rank-summary{
  display:flex!important;flex-wrap:wrap;align-items:baseline;
  gap:0!important;grid-template-columns:none!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  padding:0;margin:0 0 16px;
}
.up-rank-shell .up-rank-summary article{
  display:flex;align-items:baseline;gap:6px;
  min-height:0!important;padding:0 16px 0 0!important;margin-right:16px;
  border:0!important;border-right:1px solid var(--ur-line)!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.up-rank-shell .up-rank-summary article:last-child{border-right:0!important;margin-right:0}
.up-rank-shell .up-rank-summary article>span{
  font-size:12px;font-weight:600;color:var(--ur-muted);letter-spacing:0;
}
.up-rank-shell .up-rank-summary article>strong{
  font-size:16px;font-weight:800;color:var(--ur-ink);margin:0;
  letter-spacing:-.02em;font-variant-numeric:tabular-nums;
}
/* 부제는 값과 중복이라 화면에서 감춥니다 (읽기 도구에는 남습니다). */
.up-rank-shell .up-rank-summary article>small{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
/* --- 4. 순위 패널: 바깥 상자를 없애고 목록이 바로 보이게 --- */
.up-rank-shell .up-rank-panel{
  border:0!important;background:transparent!important;
  box-shadow:none!important;padding:0!important;
}
.up-rank-shell .up-rank-panel-head{margin-bottom:10px}
.up-rank-shell .up-rank-panel-head>div>span,.up-rank-shell .up-rank-panel-head>div>p{display:none}
.up-rank-shell .up-rank-panel-head h2{font-size:15px;font-weight:800;margin:0;letter-spacing:-.02em}
/* --- 5. 도구줄: 검색 · 필터 · 정렬을 한 줄로 --- */
.up-rank-shell .up-rank-controls{gap:8px;margin:0 0 8px}
.up-rank-shell .up-rank-search{
  border:1px solid var(--ur-line);border-radius:9px;background:var(--ur-surface);
  padding:9px 12px;font-size:13px;box-shadow:none;
}
.up-rank-shell .up-rank-search:focus{outline:2px solid var(--ur-accent);outline-offset:-1px}
.up-rank-shell .up-rank-sort-button,.up-rank-shell .up-rank-refresh{
  border:1px solid var(--ur-line);background:transparent;color:var(--ur-muted);
  border-radius:9px;padding:9px 12px;font-size:12px;font-weight:700;box-shadow:none;
}
.up-rank-shell .up-rank-filterbar{gap:4px;margin:0 0 8px;padding:0;border:0;background:transparent}
.up-rank-shell .up-rank-filterbar button{
  border:1px solid transparent;background:transparent;color:var(--ur-muted);
  border-radius:7px;padding:6px 10px;font-size:12px;font-weight:700;box-shadow:none;
}
.up-rank-shell .up-rank-filterbar button:hover{background:var(--ur-canvas);color:var(--ur-ink)}
.up-rank-shell .up-rank-filterbar button.active{
  background:var(--ur-canvas);border-color:var(--ur-line);color:var(--ur-ink);
}
.up-rank-shell .up-rank-filterbar button span{color:var(--ur-muted);font-variant-numeric:tabular-nums}
.up-rank-shell .up-rank-filterbar button.active span{color:var(--ur-accent)}
/* 출처 줄은 확인용 정보라 가장 작게 내립니다. */
.up-rank-shell .up-rank-source{
  border:0;background:transparent;padding:0;margin:0 0 14px;
  font-size:11px;color:var(--ur-muted);
}
.up-rank-shell .up-rank-source b{font-weight:600;color:var(--ur-muted)}
/* --- 6. CREW WATCH: 초록 테두리 상자 → 조용한 칩 --- */
.up-rank-shell .up-rank-crew-pins{
  border:0!important;background:transparent!important;box-shadow:none!important;
  padding:0!important;margin:0 0 14px;
}
.up-rank-shell .up-rank-crew-pins-head span{display:none}
.up-rank-shell .up-rank-crew-pins-head strong{font-size:12px;font-weight:700;color:var(--ur-muted)}
.up-rank-shell .up-rank-crew-pins-head small{font-size:11px;color:var(--ur-muted)}
.up-rank-shell .up-rank-crew-pin-list>*{
  border:1px solid var(--ur-line)!important;background:var(--ur-surface)!important;
  border-radius:9px!important;box-shadow:none!important;padding:8px 11px!important;
}
.up-rank-shell .up-rank-crew-pin-list>*:hover{border-color:var(--ur-accent)!important}
/* --- 7. 목록: 3열은 4위·46위·88위가 나란히 놓여 읽기 어렵습니다. 한 줄로 되돌립니다. --- */
.up-rank-shell .ur-board{column-count:1!important;column-gap:0!important}
.up-rank-shell .ur-row{
  grid-template-columns:52px minmax(0,1fr) auto;
  padding:10px 14px;margin:0 0 5px;border-radius:10px;
}
.up-rank-shell .ur-rank b{font-size:18px}
.up-rank-shell .ur-up b{font-size:16px}
/* 넓은 화면에서는 목록 폭만 제한해 한 줄이 지나치게 길어지지 않게 합니다. */
@media (min-width:1100px){.up-rank-shell .ur-board-wrap{max-width:900px}
.up-rank-shell .up-rank-controls{max-width:900px}}
/* ============================================================
   v2250 · 피드백 반영
   1) 목록 오른쪽 빈 공간 제거  2) 제목 보강  3) 요약 압축
   4) 탭 가시성 확보  5) 크루 가로 스크롤 제거  6) 커트라인 흐림 제거
   ============================================================ */
/* --- 1. 목록 폭 제한을 없애 오른쪽 여백을 제거합니다 --- */
.up-rank-shell .ur-board-wrap,.up-rank-shell .up-rank-controls{max-width:none}
@media (min-width:1100px){.up-rank-shell .ur-board-wrap,.up-rank-shell .up-rank-controls{max-width:none}}
/* --- 2. 제목: 크기를 키우고 실시간 표시를 붙여 존재감을 줍니다 --- */
.up-rank-shell .up-rank-head{padding:4px 2px 16px}
.up-rank-shell .up-rank-head h1{
  font-size:34px;font-weight:800;letter-spacing:-.035em;line-height:1.15;
}
.up-rank-shell .up-rank-head h1::after{
  content:'';display:inline-block;width:7px;height:7px;margin-left:10px;
  vertical-align:middle;border-radius:50%;background:var(--ur-accent);
  animation:urLivePulse 2s ease-in-out infinite;
}
@keyframes urLivePulse{0%,100%{opacity:1}50%{opacity:.25}}
.up-rank-shell .up-rank-head #upRankDisplayDescription{font-size:13px;margin-top:6px}
/* --- 3. 요약: 세로 여백을 줄이고 한 줄에 붙입니다 --- */
.up-rank-shell .up-rank-summary{margin:0 0 18px;padding:0}
.up-rank-shell .up-rank-summary article{
  padding:0 14px 0 0!important;margin-right:14px;
  flex-direction:row;align-items:baseline;gap:7px;
}
.up-rank-shell .up-rank-summary article>span{font-size:11px;font-weight:600}
.up-rank-shell .up-rank-summary article>strong{font-size:15px;line-height:1.2}
/* 마감이 설정되지 않은 게시글에서는 '마감까지 -' 를 아예 감춥니다. */
.up-rank-shell .up-rank-summary article.ur-deadline-card[hidden]{display:none!important}
/* --- 4. 탭: 활성 탭을 확실히 읽히게 --- */
.up-rank-shell .up-rank-board-tabs{gap:0;margin:0 0 18px}
.up-rank-shell .up-rank-board-tab{
  padding:10px 18px;font-size:15px;font-weight:700;
  border-bottom-width:3px;color:var(--ur-muted);
}
.up-rank-shell .up-rank-board-tab:hover{color:var(--ur-ink);background:var(--ur-canvas)}
.up-rank-shell .up-rank-board-tab.is-active{
  color:var(--ur-accent);font-weight:800;
  border-bottom-color:var(--ur-accent);background:transparent;
}
/* --- 5. 크루 순위: 가로 스크롤 대신 줄바꿈으로 전부 보이게 --- */
.up-rank-shell .up-rank-crew-pin-list{
  display:flex;flex-wrap:wrap;overflow:visible;gap:6px;
}
.up-rank-shell .up-rank-crew-pin-list>*{flex:0 1 auto;padding:7px 10px!important}
.up-rank-shell .up-rank-crew-pins{margin-bottom:18px}
/* --- 6. 커트라인 아래를 흐리게 하지 않습니다. 구분선과 색으로만 알립니다. --- */
.up-rank-shell .ur-row.is-out{opacity:1;background:var(--ur-surface)}
.up-rank-shell .ur-row.is-out .ur-rank b,.up-rank-shell .ur-row.is-out .ur-up b{color:var(--ur-muted)}
.up-rank-shell .ur-row.is-cutline{
  border-color:var(--ur-pass);box-shadow:none;
  border-bottom-width:2px;border-bottom-color:var(--ur-pass);
}
/* ============================================================
   v2250 · 실사용 피드백 반영
   1) 목록 오른쪽 빈 공간  2) 허전한 제목  3) 요약이 차지하는 높이
   4) 눈에 안 띄는 탭      5) 크루 가로 스크롤  6) 커트라인 아래 흐림
   ============================================================ */
/* 1. 목록 폭 제한을 없앱니다. 오른쪽에 빈 공간이 남는 게 더 어색합니다. */
@media (min-width:1100px){.up-rank-shell .ur-board-wrap{max-width:none}
.up-rank-shell .up-rank-controls{max-width:none}}
/* 2. 제목 옆에 지금 상태를 붙여 허전함을 없앱니다.
      장식이 아니라 "지금 몇 명이 겨루는 중인지"라는 실제 정보입니다. */
.up-rank-shell .up-rank-head h1{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:30px;
}
.up-rank-shell .up-rank-head h1::after{
  content:attr(data-live);
  font-size:11px;font-weight:800;letter-spacing:.06em;
  color:var(--ur-accent);border:1px solid currentColor;
  border-radius:999px;padding:3px 9px;white-space:nowrap;
}
.up-rank-shell .up-rank-head h1:not([data-live])::after,.up-rank-shell .up-rank-head h1[data-live=""]::after{display:none}
/* 3. 요약: 세로로 쌓이던 것을 한 줄로 눕혀 높이를 줄입니다. */
.up-rank-shell .up-rank-summary{margin:0 0 12px;padding:0}
.up-rank-shell .up-rank-summary article{
  flex-direction:row!important;align-items:baseline!important;
  justify-content:flex-start!important;
  padding:0 14px 0 0!important;margin-right:14px;
}
.up-rank-shell .up-rank-summary article>span{font-size:11px;white-space:nowrap}
.up-rank-shell .up-rank-summary article>strong{font-size:15px}
/* 마감이 없는 게시글에서는 카드가 아예 사라지게 합니다.
   display:flex가 hidden 속성을 덮어써서 '마감까지 -'가 남아 있었습니다. */
.up-rank-shell .up-rank-summary article[hidden]{display:none!important}
/* 4. 탭: 밑줄만으로는 약했습니다. 글자를 키우고 선을 굵게, 활성 배경을 얹습니다. */
.up-rank-shell .up-rank-board-tabs{gap:4px;margin:0 0 16px}
.up-rank-shell .up-rank-board-tab{
  font-size:15px;font-weight:800;padding:10px 16px;
  color:var(--ur-muted);border-bottom-width:3px;border-radius:8px 8px 0 0;
}
.up-rank-shell .up-rank-board-tab:hover{color:var(--ur-ink);background:var(--ur-canvas)}
.up-rank-shell .up-rank-board-tab.is-active{
  color:var(--ur-accent);background:var(--ur-canvas);
  border-bottom-color:var(--ur-accent);
}
/* 5. 크루: 가로 스크롤 대신 줄바꿈. 12명이면 두 줄에 다 들어옵니다. */
.up-rank-shell .up-rank-crew-pin-list{
  display:flex!important;flex-wrap:wrap!important;gap:6px!important;
  overflow:visible!important;scroll-snap-type:none!important;
}
.up-rank-shell .up-rank-crew-pin-list::-webkit-scrollbar{display:none}
.up-rank-shell .up-rank-crew-pin-list>*{
  flex:0 0 auto!important;min-width:0!important;width:auto!important;
  scroll-snap-align:none!important;
}
/* 스크롤이 사라졌으므로 아래 스크롤바 장식도 함께 감춥니다. */
.up-rank-shell .up-rank-crew-pins [class*="scroll"]{display:none!important}
/* 6. 커트라인 아래 흐림 제거.
      통과 여부는 커트라인 선 하나로 충분하고, 흐림은 읽기를 방해합니다. */
.up-rank-shell .ur-row.is-out{
  background:var(--ur-surface);opacity:1;filter:none;
}
/* 대신 왼쪽에 얇은 회색 띠로만 조용히 구분합니다. */
.up-rank-shell .ur-row.is-out{border-left:3px solid var(--ur-line)}
.up-rank-shell .ur-row.is-cutline{
  border-color:var(--ur-pass);box-shadow:inset 0 -2px 0 var(--ur-pass);
}
/* ============================================================
   v2251 · 목록까지 도달하는 높이 줄이기
   제목부터 검색창까지 화면의 절반을 쓰고 있었습니다.
   실제 정보를 주지 않는 줄을 걷어내고, 남길 것은 한 줄로 눕힙니다.
   ============================================================ */
/* UP 옆의 차이값(+290 · −10)은 증가율처럼 보여 오해를 만듭니다.
   이 화면에서 궁금한 변화는 "몇 계단 올랐나"이므로 순위 변동만 남깁니다. */
.up-rank-shell .ur-gap{display:none!important}
.up-rank-shell .ur-move{
  font-size:11px;font-weight:800;line-height:1;margin-left:5px;
  font-variant-numeric:tabular-nums;
}
.up-rank-shell .ur-move.up{color:#e0245e}
.up-rank-shell .ur-move.down{color:#3b82f6}
/* 제목 · 설명문은 제목과 중복이라 접습니다. */
.up-rank-shell .up-rank-head{padding:0 0 10px!important;gap:10px!important}
.up-rank-shell .up-rank-head h1{font-size:22px!important}
.up-rank-shell .up-rank-head h1::after{font-size:10px;padding:2px 7px}
.up-rank-shell .up-rank-head #upRankDisplayDescription{display:none}
.up-rank-shell .up-rank-head-actions a,.up-rank-shell .up-rank-head-actions button{padding:5px 10px;font-size:11px}
/* 탭 */
.up-rank-shell .up-rank-board-tabs{margin:0 0 10px!important}
.up-rank-shell .up-rank-board-tab{font-size:14px!important;padding:7px 13px!important}
/* 요약 · 한 줄로 눕히고 값 크기를 본문 수준으로 낮춥니다. */
.up-rank-shell .up-rank-summary{
  margin:0 0 10px!important;padding:8px 0!important;
  border-top:1px solid var(--ur-line)!important;
  border-bottom:1px solid var(--ur-line)!important;
  row-gap:4px!important;
}
.up-rank-shell .up-rank-summary article{
  padding:0 12px 0 0!important;margin-right:12px!important;min-height:0!important;
}
.up-rank-shell .up-rank-summary article>span{font-size:11px!important}
.up-rank-shell .up-rank-summary article>strong{font-size:14px!important;line-height:1.2!important}
/* "현재 순위" 제목 텍스트만 접고, 갱신 버튼과 상태 문구는 남깁니다.
   줄 전체를 숨기면 [지금 갱신]까지 사라집니다. */
.up-rank-shell .up-rank-panel-head{
  margin:0 0 6px!important;padding:0!important;min-height:0!important;
  justify-content:flex-end!important;
}
.up-rank-shell .up-rank-panel-head>div:first-child{display:none!important}
.up-rank-shell .up-rank-controls{
  display:flex!important;align-items:center;gap:6px;margin:0 0 6px!important;
}
.up-rank-shell .up-rank-search{flex:1 1 auto;padding:7px 11px!important;font-size:13px!important}
.up-rank-shell .up-rank-sort-button{flex:0 0 auto;padding:7px 11px!important}
/* 갱신 버튼과 상태 문구는 오른쪽 정렬로 한 줄에 붙입니다. */
.up-rank-shell .up-rank-live-tools{
  display:flex;align-items:center;gap:6px;
}
.up-rank-shell .up-rank-refresh{padding:7px 11px!important;white-space:nowrap}
.up-rank-shell .up-rank-status{font-size:11px;color:var(--ur-muted)}
/* 필터 · 출처 */
.up-rank-shell .up-rank-filterbar{margin:0 0 6px!important}
.up-rank-shell .up-rank-filterbar button{padding:5px 9px!important;font-size:12px!important}
.up-rank-shell .up-rank-source{margin:0 0 8px!important;font-size:10px!important;opacity:.75}
/* 크루 칩 · 칩을 작게 해 두 줄이 한 줄에 가깝게 보이도록 */
.up-rank-shell .up-rank-crew-pins{margin:0 0 8px!important}
.up-rank-shell .up-rank-crew-pins-head{margin-bottom:5px}
.up-rank-shell .up-rank-crew-pins-head small{display:none}
.up-rank-shell .up-rank-crew-pin-list>*{padding:5px 8px!important;font-size:11px!important;gap:5px!important}
.up-rank-shell .up-rank-crew-pin-list img{width:20px!important;height:20px!important}
/* TOP 3 · 별도 제목줄을 접고 카드만 남깁니다. */
.up-rank-shell .up-rank-podium .up-rank-section-head{display:none!important}
.up-rank-shell .up-rank-podium{margin:0 0 8px!important;padding:0!important;border:0!important;background:transparent!important}
.up-rank-shell .up-rank-podium-list>*{padding:9px 12px!important}
/* ============================================================
   v2253 · 짧은 진드기 미리보기 + 전체 순위 펼치기
   - 요약 바 압축 / 갱신 우측 상단 소형화
   - 진드기 미리보기 카드 강화
   - 커트라인 강조 리디자인
   - 전체 순위 접기/펼치기
   ============================================================ */
.up-rank-shell .up-rank-summary{
  display:flex !important;flex-wrap:wrap;align-items:center;gap:10px !important;
  margin:0 0 16px;padding:0;border:0 !important;background:transparent !important;
}
.up-rank-shell .up-rank-summary article{
  display:flex;align-items:baseline;gap:6px;min-height:0 !important;
  padding:0 12px 0 0 !important;margin:0 12px 0 0;border:0 !important;
  border-right:1px solid var(--ur-line) !important;background:transparent !important;
  border-radius:0 !important;box-shadow:none !important;
}
.up-rank-shell .up-rank-summary article > span{font-size:11px;font-weight:700;color:var(--ur-muted)}
.up-rank-shell .up-rank-summary article > strong{font-size:14px;font-weight:800;letter-spacing:-.02em;color:var(--ur-ink)}
.up-rank-shell .up-rank-summary article > small{display:none}
.up-rank-shell .up-rank-summary .ur-deadline-card{
  border:1px solid var(--ur-line) !important;border-radius:12px !important;background:var(--ur-surface) !important;
  padding:9px 12px !important;margin:0;border-right:0 !important;display:grid;gap:2px;align-items:start;
}
.up-rank-shell .up-rank-summary .ur-deadline-card{margin-left:auto}
.up-rank-shell .up-rank-summary .ur-deadline-card > span{font-size:10px;color:var(--ur-muted)}
.up-rank-shell .up-rank-summary .ur-deadline-card > strong{font-size:13px}
.up-rank-shell .up-rank-summary .ur-deadline-card > small{display:block;font-size:10px;color:var(--ur-muted)}
.up-rank-shell .up-rank-crew-pins{margin:2px 0 14px}
.up-rank-shell .up-rank-crew-pins-head{
  display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin:0 0 10px;
}
.up-rank-shell .up-rank-crew-pins-head span{display:block;font-size:10px;letter-spacing:.14em;color:var(--ur-muted)}
.up-rank-shell .up-rank-crew-pins-head strong{font-size:20px;font-weight:800;color:var(--ur-ink)}
.up-rank-shell .up-rank-crew-pins-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.up-rank-shell .up-rank-crew-pins-tools small{font-size:11px;color:var(--ur-muted)}
.up-rank-shell .up-rank-expand-button{
  border:1px solid var(--ur-line);background:var(--ur-surface);color:var(--ur-ink);
  border-radius:999px;padding:9px 14px;font-size:12px;font-weight:800;cursor:pointer;
  transition:border-color .18s ease, transform .18s ease, color .18s ease;
}
.up-rank-shell .up-rank-expand-button:hover{border-color:var(--ur-accent);color:var(--ur-accent);transform:translateY(-1px)}
.up-rank-shell .up-rank-expand-button.is-open{border-color:var(--ur-accent);color:var(--ur-accent)}
.up-rank-shell .up-rank-crew-pin-list{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;
}
.up-rank-shell .up-rank-pin-card{
  display:flex;align-items:center;gap:12px;padding:10px 12px !important;border-radius:14px !important;
}
.up-rank-shell .up-rank-pin-avatar{
  width:48px;height:48px;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  background:var(--ur-canvas);flex:0 0 48px;border:1px solid var(--ur-line);
}
.up-rank-shell .up-rank-pin-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.up-rank-shell .up-rank-pin-avatar span{font-size:18px;font-weight:800;color:var(--ur-ink)}
.up-rank-shell .up-rank-pin-mainline{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px}
.up-rank-shell .up-rank-pin-mainline strong{font-size:18px;font-weight:800;color:var(--ur-ink);line-height:1.1}
.up-rank-shell .up-rank-pin-mainline span{font-size:13px;font-weight:700;color:var(--ur-muted)}
.up-rank-shell .up-rank-pin-mainline b{font-size:15px;font-weight:800;color:var(--ur-accent)}
.up-rank-shell .up-rank-panel.is-collapsed{
  max-height:0;opacity:0;overflow:hidden;pointer-events:none;margin:0 !important;padding:0 !important;
  transform:translateY(-6px);transition:max-height .32s ease, opacity .22s ease, transform .22s ease;
}
.up-rank-shell .up-rank-panel{transition:max-height .32s ease, opacity .22s ease, transform .22s ease}
.up-rank-shell .ur-cutline{
  display:flex;align-items:center;gap:12px;margin:10px 0 12px;padding:2px 0;
}
.up-rank-shell .ur-cutline-line{
  flex:1;height:1px;position:relative;background:linear-gradient(90deg, transparent, rgba(218, 43, 87, .6), transparent);
}
.up-rank-shell .ur-cutline-line::before{
  content:'';position:absolute;left:0;right:0;top:-6px;height:6px;
  background:repeating-linear-gradient(-45deg, transparent 0 8px, rgba(218,43,87,.18) 8px 16px);
  clip-path:polygon(0 100%,4% 0,8% 100%,12% 0,16% 100%,20% 0,24% 100%,28% 0,32% 100%,36% 0,40% 100%,44% 0,48% 100%,52% 0,56% 100%,60% 0,64% 100%,68% 0,72% 100%,76% 0,80% 100%,84% 0,88% 100%,92% 0,96% 100%,100% 0,100% 100%,0 100%);
}
.up-rank-shell .ur-cutline-center{
  display:grid;place-items:center;min-width:132px;padding:10px 14px;border-radius:999px;
  border:1px solid rgba(218,43,87,.35);background:linear-gradient(180deg, rgba(218,43,87,.13), rgba(218,43,87,.05));
  box-shadow:0 10px 20px rgba(218,43,87,.12);
}
.up-rank-shell .ur-cutline-center b{font-size:22px;line-height:1;font-weight:900;color:var(--ur-accent);letter-spacing:-.04em}
.up-rank-shell .ur-cutline-center small{font-size:11px;color:var(--ur-muted);margin-top:4px}
.up-rank-shell .ur-row.is-cutline{border-color:rgba(218,43,87,.35);box-shadow:inset 0 -2px 0 var(--ur-accent)}
.up-rank-shell .ur-row.is-out{background:color-mix(in srgb, var(--ur-canvas) 88%, transparent);opacity:.84}
@media (max-width:900px){.up-rank-shell .up-rank-summary{gap:8px !important}
.up-rank-shell .up-rank-summary article{padding:0 10px 0 0 !important;margin-right:10px}
.up-rank-shell .up-rank-summary .ur-deadline-card{margin-left:0}
.up-rank-shell .up-rank-crew-pins-head{flex-direction:column;align-items:flex-start}
.up-rank-shell .up-rank-crew-pins-tools{justify-content:flex-start}
.up-rank-shell .up-rank-crew-pin-list{grid-template-columns:1fr}
.up-rank-shell .up-rank-pin-avatar{width:44px;height:44px;flex-basis:44px}
.up-rank-shell .up-rank-pin-mainline strong{font-size:16px}
.up-rank-shell .ur-cutline{gap:8px}
.up-rank-shell .ur-cutline-center{min-width:112px;padding:8px 12px}
.up-rank-shell .ur-cutline-center b{font-size:18px}}
/* ============================================================
   v2254 · compact scoreboard / dark mode repair
   ============================================================ */
/* theme variables must follow the actual html[data-theme] switch */
[data-theme="light"] .up-rank-shell,.up-rank-shell{
  --ur-bg:#f8f5f7;
  --ur-ink:#18141a;
  --ur-muted:#756b72;
  --ur-line:#e8e1e6;
  --ur-surface:#ffffff;
  --ur-surface-2:#f7f3f6;
  --ur-accent:#e51b5a;
  --ur-pass:#0f8c5a;
  --ur-out:#8c8389;
}
html[data-theme="dark"] .up-rank-shell,html.dark .up-rank-shell{
  --ur-bg:#080b12;
  --ur-ink:#f4f5f7;
  --ur-muted:#9097a3;
  --ur-line:#202735;
  --ur-surface:#0e131c;
  --ur-surface-2:#111824;
  --ur-accent:#ff4f82;
  --ur-pass:#55d397;
  --ur-out:#6f7784;
}
html[data-theme="dark"] .up-rank-page,html.dark .up-rank-page{
  background:#080b12 !important;
  color:var(--ur-ink) !important;
}
html[data-theme="dark"] .up-rank-shell,html.dark .up-rank-shell{color:var(--ur-ink)}
/* title: remove the duplicated competition pill and use a clean leaderboard header */
.up-rank-shell .up-rank-head{
  align-items:center !important;
  padding:4px 0 12px !important;
  border:0 !important;
}
.up-rank-shell .up-rank-head>div:first-child{
  position:relative;padding-left:14px;
}
.up-rank-shell .up-rank-head>div:first-child::before{
  content:'';position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:999px;background:var(--ur-accent);
}
.up-rank-shell .up-rank-head .eyebrow{
  display:block !important;margin:0 0 3px !important;font-size:10px !important;line-height:1.2;
  letter-spacing:.15em;color:var(--ur-accent) !important;font-weight:800 !important;
}
.up-rank-shell .up-rank-head h1{
  display:block !important;margin:0 !important;font-size:27px !important;line-height:1.08 !important;
  font-weight:900 !important;letter-spacing:-.045em !important;color:var(--ur-ink) !important;
}
.up-rank-shell .up-rank-head h1::after{display:none !important;content:none !important}
.up-rank-shell .up-rank-head #upRankDisplayDescription{display:none !important}
.up-rank-shell .up-rank-head-actions{align-items:center;gap:7px}
.up-rank-shell .ur-mini-updated{
  display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:0;background:transparent;
  color:var(--ur-muted);font-size:10px;font-weight:650;white-space:nowrap;
}
.up-rank-shell .ur-mini-updated b{color:var(--ur-ink);font-size:10px;font-variant-numeric:tabular-nums}
/* board tabs: no full-width horizontal rule */
.up-rank-shell .up-rank-board-tabs{
  width:max-content;max-width:100%;border-bottom:0 !important;padding:0 !important;margin:0 0 12px !important;gap:6px !important;
}
.up-rank-shell .up-rank-board-tab{
  border:0 !important;border-radius:8px !important;padding:7px 12px !important;background:transparent !important;
  color:var(--ur-muted) !important;font-size:13px !important;font-weight:800 !important;
}
.up-rank-shell .up-rank-board-tab.is-active{
  color:var(--ur-accent) !important;background:color-mix(in srgb,var(--ur-accent) 9%,transparent) !important;
  box-shadow:inset 0 -2px 0 var(--ur-accent);
}
/* compact reference-style metric tiles; no separators */
.up-rank-shell .up-rank-summary{
  display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;margin:0 0 12px !important;padding:0 !important;
  border:0 !important;background:transparent !important;overflow:visible !important;
}
.up-rank-shell .up-rank-summary article{
  display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:center !important;
  min-width:0;min-height:64px !important;padding:10px 12px !important;margin:0 !important;
  border:1px solid var(--ur-line) !important;border-radius:10px !important;background:var(--ur-surface) !important;
  box-shadow:none !important;
}
.up-rank-shell .up-rank-summary article[hidden]{display:none !important}
.up-rank-shell .up-rank-summary article>span{font-size:10px !important;color:var(--ur-muted) !important;font-weight:750 !important;letter-spacing:.01em !important}
.up-rank-shell .up-rank-summary article>strong{
  margin:4px 0 0 !important;font-size:17px !important;line-height:1.1 !important;color:var(--ur-ink) !important;
  font-weight:850 !important;letter-spacing:-.035em !important;font-variant-numeric:tabular-nums;
}
.up-rank-shell .up-rank-summary article>small{display:none !important}
.up-rank-shell .up-rank-summary .ur-deadline-card{margin:0 !important}
/* jindegi snapshot: return to the original compact size, only the group label stays removed */
.up-rank-shell .up-rank-crew-pins{margin:0 0 10px !important}
.up-rank-shell .up-rank-crew-pins-head{margin:0 0 7px !important;align-items:center !important}
.up-rank-shell .up-rank-crew-pins-head span{font-size:9px !important;letter-spacing:.14em;color:var(--ur-muted) !important}
.up-rank-shell .up-rank-crew-pins-head strong{font-size:17px !important;color:var(--ur-ink) !important}
.up-rank-shell .up-rank-crew-pin-list{
  display:flex !important;flex-wrap:wrap !important;gap:6px !important;overflow:visible !important;
}
.up-rank-shell .up-rank-pin-card{
  min-width:0 !important;max-width:none !important;width:auto !important;flex:0 0 auto !important;
  display:flex !important;align-items:center !important;gap:7px !important;
  padding:6px 9px !important;border:1px solid var(--ur-line) !important;border-radius:10px !important;
  background:var(--ur-surface) !important;box-shadow:none !important;
}
.up-rank-shell .up-rank-pin-avatar{
  width:24px !important;height:24px !important;flex:0 0 24px !important;border-radius:50% !important;
  overflow:hidden;border:0 !important;background:var(--ur-surface-2) !important;
}
.up-rank-shell .up-rank-pin-avatar img{width:24px !important;height:24px !important;object-fit:cover !important;border-radius:50% !important}
.up-rank-shell .up-rank-pin-avatar span{font-size:10px !important}
.up-rank-shell .up-rank-pin-mainline{display:flex !important;align-items:baseline !important;gap:5px !important;white-space:nowrap}
.up-rank-shell .up-rank-pin-mainline strong{font-size:13px !important;color:var(--ur-ink) !important;font-weight:850 !important}
.up-rank-shell .up-rank-pin-mainline span{font-size:11px !important;color:var(--ur-muted) !important;font-weight:700 !important}
.up-rank-shell .up-rank-pin-mainline b{font-size:12px !important;color:var(--ur-pass) !important;font-weight:850 !important}
.up-rank-shell .up-rank-pin-card.is-jinho,.up-rank-shell .up-rank-pin-card.is-jindegi{background:var(--ur-surface) !important;border-color:var(--ur-line) !important;box-shadow:none !important}
/* dark mode: every visible uprank surface follows the navy reference, not the legacy green palette */
html[data-theme="dark"] .up-rank-shell .up-rank-head-actions a,html[data-theme="dark"] .up-rank-shell .up-rank-head-actions button,html.dark .up-rank-shell .up-rank-head-actions a,html.dark .up-rank-shell .up-rank-head-actions button,html[data-theme="dark"] .up-rank-shell .up-rank-search,html[data-theme="dark"] .up-rank-shell .up-rank-sort-button,html[data-theme="dark"] .up-rank-shell .up-rank-refresh,html.dark .up-rank-shell .up-rank-search,html.dark .up-rank-shell .up-rank-sort-button,html.dark .up-rank-shell .up-rank-refresh{
  background:var(--ur-surface) !important;border-color:var(--ur-line) !important;color:var(--ur-ink) !important;
}
html[data-theme="dark"] .up-rank-shell .up-rank-filterbar button,html.dark .up-rank-shell .up-rank-filterbar button{background:transparent !important;border-color:transparent !important;color:var(--ur-muted) !important}
html[data-theme="dark"] .up-rank-shell .up-rank-filterbar button.active,html.dark .up-rank-shell .up-rank-filterbar button.active{background:#171e2b !important;border-color:#2b3445 !important;color:var(--ur-ink) !important}
html[data-theme="dark"] .up-rank-shell .up-rank-filterbar button span,html.dark .up-rank-shell .up-rank-filterbar button span{background:#1b2331 !important;color:#a8afba !important}
html[data-theme="dark"] .up-rank-shell .up-rank-filterbar button.active span,html.dark .up-rank-shell .up-rank-filterbar button.active span{background:var(--ur-accent) !important;color:#fff !important}
html[data-theme="dark"] .up-rank-shell .up-rank-source,html.dark .up-rank-shell .up-rank-source{color:var(--ur-muted) !important;border-color:transparent !important;background:transparent !important}
html[data-theme="dark"] .up-rank-shell .ur-row,html.dark .up-rank-shell .ur-row{background:var(--ur-surface) !important;border-color:var(--ur-line) !important;color:var(--ur-ink) !important}
html[data-theme="dark"] .up-rank-shell .ur-row:hover,html.dark .up-rank-shell .ur-row:hover{background:#121925 !important;border-color:#354052 !important}
html[data-theme="dark"] .up-rank-shell .ur-board-head,html.dark .up-rank-shell .ur-board-head{color:var(--ur-muted) !important;border-color:var(--ur-line) !important}
html[data-theme="dark"] .up-rank-shell .up-rank-expand-button,html.dark .up-rank-shell .up-rank-expand-button{background:#111824 !important;border-color:#293244 !important;color:#e9edf3 !important}
/* cutline stays visible in both themes without making the list look like a warning screen */
html[data-theme="dark"] .up-rank-shell .ur-cutline-center,html.dark .up-rank-shell .ur-cutline-center{background:#15101a !important;border-color:rgba(255,79,130,.35) !important}
html[data-theme="dark"] .up-rank-shell .ur-cutline-line,html.dark .up-rank-shell .ur-cutline-line{background:linear-gradient(90deg,transparent,rgba(255,79,130,.62),transparent) !important}
@media (max-width:1100px){.up-rank-shell .up-rank-summary{grid-template-columns:repeat(3,minmax(0,1fr)) !important}}
@media (max-width:760px){.up-rank-shell .up-rank-head{align-items:flex-start !important}
.up-rank-shell .up-rank-head-actions{width:100%;justify-content:flex-start}
.up-rank-shell .up-rank-summary{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
.up-rank-shell .up-rank-summary article{min-height:58px !important;padding:9px 10px !important}
.up-rank-shell .up-rank-summary article>strong{font-size:15px !important}
.up-rank-shell .up-rank-crew-pins-head{align-items:flex-start !important}}
/* ============================================================
   v2256 · 진드기 요약만 보기 = 방송 화면형 컴팩트 랭킹
   ============================================================ */
.up-rank-shell.is-summary-only .up-rank-crew-pins{
  margin:8px 0 0 !important;padding:0 !important;border:0 !important;background:transparent !important;
}
.up-rank-shell.is-summary-only .up-rank-crew-pins-head{
  margin:0 0 10px !important;align-items:center !important;
}
.up-rank-shell.is-summary-only .up-rank-crew-pins-head span{
  font-size:10px !important;letter-spacing:.18em !important;color:var(--ur-muted) !important;
}
.up-rank-shell.is-summary-only .up-rank-crew-pins-head strong{
  font-size:22px !important;letter-spacing:-.03em !important;color:var(--ur-ink) !important;
}
.up-rank-shell.is-summary-only .up-rank-crew-pins-tools small{display:none !important}
.up-rank-shell.is-summary-only .up-rank-expand-button{
  padding:10px 16px;border-radius:999px;background:rgba(8,15,32,.94);border:1px solid rgba(255,255,255,.16);color:#fff;
}
.up-rank-shell.is-summary-only .up-rank-crew-pin-list{
  display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 !important;
  border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;
  background:linear-gradient(180deg,rgba(7,15,31,.96),rgba(5,10,22,.98));
  box-shadow:0 16px 34px rgba(0,0,0,.24);
}
.up-rank-shell.is-summary-only .up-rank-pin-card{
  min-height:68px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:12px 16px !important;margin:0 !important;border:0 !important;border-right:1px solid rgba(255,255,255,.07) !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right:0 !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-last-child(-n+3){border-bottom:0 !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:hover{background:rgba(255,255,255,.03) !important;border-color:rgba(255,255,255,.07) !important;transform:none !important}
.up-rank-shell.is-summary-only .up-rank-pin-avatar{
  width:34px;height:34px;flex-basis:34px;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline{
  display:grid !important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;min-width:0;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline strong{
  grid-column:1;font-size:15px !important;font-weight:800;color:#f5f7ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline span{
  grid-column:1;font-size:12px !important;font-weight:700;color:#a3adc2;white-space:nowrap;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline b{
  grid-column:2;grid-row:1 / span 2;align-self:center;font-size:15px !important;font-weight:900;color:#73d78e;white-space:nowrap;
}
.up-rank-shell.is-summary-only .up-rank-pin-card.is-jinho .up-rank-pin-mainline b{color:#ff7f9f}
.up-rank-shell.is-summary-only .up-rank-panel.is-collapsed{display:none !important;max-height:0 !important;opacity:0 !important;overflow:hidden !important}
/* 펼친 상태에서도 요약은 너무 카드스럽지 않게 유지 */
.up-rank-shell .up-rank-crew-pin-list{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.up-rank-shell .up-rank-pin-card{
  background:var(--ur-surface) !important;
}
@media (max-width:1180px){.up-rank-shell.is-summary-only .up-rank-crew-pin-list{grid-template-columns:repeat(2,minmax(0,1fr));}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right:1px solid rgba(255,255,255,.07) !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(2n){border-right:0 !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-last-child(-n+3){border-bottom:1px solid rgba(255,255,255,.07) !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-last-child(-n+2){border-bottom:0 !important}}
@media (max-width:760px){.up-rank-shell.is-summary-only .up-rank-crew-pins-head strong{font-size:18px !important}
.up-rank-shell.is-summary-only .up-rank-crew-pin-list{grid-template-columns:1fr;}
.up-rank-shell.is-summary-only .up-rank-pin-card,.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(2n),.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right:0 !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:not(:last-child){border-bottom:1px solid rgba(255,255,255,.07) !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:last-child{border-bottom:0 !important}}
/* ============================================================
   v2257 · 요약이 통째로 사라지는 문제 수정
   패널 자체는 유지하고 상세 순위 UI만 숨깁니다.
   ============================================================ */
.up-rank-shell.is-summary-only .up-rank-panel,.up-rank-shell.is-summary-only .up-rank-panel.is-collapsed{
  display:block !important;
  max-height:none !important;
  opacity:1 !important;
  overflow:visible !important;
  pointer-events:auto !important;
  transform:none !important;
  visibility:visible !important;
}
.up-rank-shell.is-summary-only .up-rank-panel-head,.up-rank-shell.is-summary-only .up-rank-controls,.up-rank-shell.is-summary-only .up-rank-filterbar,.up-rank-shell.is-summary-only .up-rank-source,.up-rank-shell.is-summary-only .up-rank-podium,.up-rank-shell.is-summary-only .ur-board-wrap{
  display:none !important;
}
.up-rank-shell.is-summary-only .up-rank-crew-pins{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}
.up-rank-shell .up-rank-crew-empty{
  grid-column:1/-1;
  min-height:88px;
  display:grid;
  place-items:center;
  padding:18px;
  border:1px solid var(--ur-line);
  border-radius:14px;
  background:var(--ur-surface);
  color:var(--ur-muted);
  font-size:13px;
  font-weight:700;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-crew-pins,html.dark .up-rank-shell.is-summary-only .up-rank-crew-pins{
  color:var(--ur-ink) !important;
}
/* ============================================================
   v2258 · summary-only theme isolation
   Light mode must never inherit the dark broadcast palette.
   ============================================================ */
/* LIGHT / default */
.up-rank-shell.is-summary-only .up-rank-crew-pin-list{
  border-color:var(--ur-line) !important;
  background:var(--ur-surface) !important;
  box-shadow:0 12px 28px rgba(32,20,28,.08) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-card{
  background:var(--ur-surface) !important;
  color:var(--ur-ink) !important;
  border-right-color:var(--ur-line) !important;
  border-bottom-color:var(--ur-line) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-card:hover{
  background:var(--ur-surface-2) !important;
  border-color:var(--ur-line) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-avatar{
  background:var(--ur-surface-2) !important;
  border-color:var(--ur-line) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline strong{
  color:var(--ur-ink) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline span{
  color:var(--ur-muted) !important;
}
.up-rank-shell.is-summary-only .up-rank-pin-mainline b{
  color:var(--ur-pass) !important;
}
.up-rank-shell.is-summary-only .up-rank-expand-button{
  background:var(--ur-surface) !important;
  border-color:var(--ur-line) !important;
  color:var(--ur-ink) !important;
  box-shadow:none !important;
}
.up-rank-shell.is-summary-only .up-rank-expand-button:hover{
  border-color:var(--ur-accent) !important;
  color:var(--ur-accent) !important;
}
/* DARK only */
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-crew-pin-list,html.dark .up-rank-shell.is-summary-only .up-rank-crew-pin-list{
  border-color:#202735 !important;
  background:linear-gradient(180deg,#0d1420,#0a101a) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.25) !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-card,html.dark .up-rank-shell.is-summary-only .up-rank-pin-card{
  background:transparent !important;
  color:#f4f5f7 !important;
  border-right-color:#202735 !important;
  border-bottom-color:#202735 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-card:hover,html.dark .up-rank-shell.is-summary-only .up-rank-pin-card:hover{
  background:#111824 !important;
  border-color:#202735 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-avatar,html.dark .up-rank-shell.is-summary-only .up-rank-pin-avatar{
  background:#111824 !important;
  border-color:#293244 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-mainline strong,html.dark .up-rank-shell.is-summary-only .up-rank-pin-mainline strong{
  color:#f4f5f7 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-mainline span,html.dark .up-rank-shell.is-summary-only .up-rank-pin-mainline span{
  color:#9097a3 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-mainline b,html.dark .up-rank-shell.is-summary-only .up-rank-pin-mainline b{
  color:#55d397 !important;
}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-expand-button,html.dark .up-rank-shell.is-summary-only .up-rank-expand-button{
  background:#111824 !important;
  border-color:#293244 !important;
  color:#e9edf3 !important;
}
/* keep the grid dividers correct at each breakpoint in both themes */
@media (max-width:1180px){.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right-color:var(--ur-line) !important}
.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(2n){border-right-color:transparent !important}
html[data-theme="dark"] .up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n),html.dark .up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right-color:#202735 !important}}
@media (max-width:760px){.up-rank-shell.is-summary-only .up-rank-pin-card,.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(2n),.up-rank-shell.is-summary-only .up-rank-pin-card:nth-child(3n){border-right-color:transparent !important}}
/* ============================================================
   v23.20 · ranking workspace structure
   Reference structure only: compact status strip + ranking list + participant detail.
   Existing Jinho Archive palette, filters, snapshot, podium and cutline are preserved.
   ============================================================ */
/* summary becomes one compact status rail instead of five oversized cards */
#page-uprank .up-rank-shell .up-rank-summary{
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  padding:0!important;
  margin:0 0 14px!important;
  border:1px solid var(--ur-line)!important;
  border-radius:12px!important;
  background:var(--ur-surface)!important;
  overflow:hidden!important;
}
#page-uprank .up-rank-shell .up-rank-summary article{
  flex:1 1 0!important;
  min-width:0!important;
  min-height:54px!important;
  margin:0!important;
  padding:9px 13px!important;
  border:0!important;
  border-right:1px solid var(--ur-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#page-uprank .up-rank-shell .up-rank-summary article:last-child{border-right:0!important}
#page-uprank .up-rank-shell .up-rank-summary article>span{
  font-size:9px!important;
  line-height:1.2!important;
  color:var(--ur-muted)!important;
  letter-spacing:.02em!important;
  font-weight:750!important;
}
#page-uprank .up-rank-shell .up-rank-summary article>strong{
  margin-top:4px!important;
  font-size:15px!important;
  line-height:1.15!important;
  color:var(--ur-ink)!important;
  font-weight:850!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#page-uprank .up-rank-shell .up-rank-summary article>small{display:none!important}
/* Full ranking workspace: list on the left, selected participant on the right. */
#page-uprank .up-rank-workspace{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:14px;
  align-items:start;
  margin-top:12px;
}
#page-uprank .up-rank-ranking-column{min-width:0}
#page-uprank .ur-board-wrap{max-width:none!important;width:100%!important;margin:0!important}
/* ranking columns now mirror the reference structure while keeping the current UI language */
#page-uprank .ur-board-head{
  display:grid!important;
  grid-template-columns:64px minmax(220px,1fr) 150px 110px!important;
  align-items:center!important;
  gap:12px!important;
  padding:0 14px 8px!important;
}
#page-uprank .ur-board-head>span:nth-child(3){text-align:right}
#page-uprank .ur-board-head>span:last-child{text-align:right}
#page-uprank .ur-row{
  width:100%!important;
  display:grid!important;
  grid-template-columns:64px minmax(220px,1fr) 150px 110px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:58px!important;
  padding:9px 14px!important;
  margin:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  text-align:left!important;
  font:inherit!important;
  cursor:pointer!important;
  color:var(--ur-ink)!important;
  transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
#page-uprank .ur-row:hover{transform:translateX(2px)!important}
#page-uprank .ur-row.is-selected{
  border-color:color-mix(in srgb,var(--ur-accent) 58%,var(--ur-line))!important;
  background:color-mix(in srgb,var(--ur-accent) 5%,var(--ur-surface))!important;
  box-shadow:inset 3px 0 0 var(--ur-accent)!important;
}
#page-uprank .ur-row .ur-time{
  justify-self:end;
  color:var(--ur-muted);
  font-size:10px;
  font-weight:650;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
#page-uprank .ur-row .ur-up{justify-self:end}
/* podium is also a selector; the original comment link lives in the detail panel */
#page-uprank .up-rank-podium-card{
  width:100%;
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
#page-uprank .up-rank-podium-card.is-selected{
  outline:1px solid color-mix(in srgb,var(--ur-accent) 58%,transparent);
  outline-offset:-1px;
}
/* participant detail */
#page-uprank .up-rank-detail{
  position:sticky;
  top:92px;
  min-width:0;
  border:1px solid var(--ur-line);
  border-radius:14px;
  background:var(--ur-surface);
  overflow:hidden;
  box-shadow:0 12px 30px rgba(28,20,31,.06);
}
#page-uprank .up-rank-detail-empty{
  min-height:250px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:26px;
}
#page-uprank .up-rank-detail-empty>span,#page-uprank .up-rank-detail-kicker{
  color:var(--ur-accent);
  font-size:9px;
  line-height:1.2;
  font-weight:850;
  letter-spacing:.15em;
}
#page-uprank .up-rank-detail-empty>strong{
  margin-top:8px;
  color:var(--ur-ink);
  font-size:18px;
  font-weight:900;
  letter-spacing:-.03em;
}
#page-uprank .up-rank-detail-empty>p{
  margin:8px 0 0;
  color:var(--ur-muted);
  font-size:11px;
  line-height:1.65;
}
#page-uprank .up-rank-detail-content{padding:18px}
#page-uprank .up-rank-detail-content[hidden],#page-uprank .up-rank-detail-empty[hidden]{display:none!important}
#page-uprank .up-rank-detail-user{
  display:flex;
  align-items:center;
  gap:11px;
  padding:12px 0 15px;
  border-bottom:1px solid var(--ur-line);
}
#page-uprank .up-rank-detail-avatar{
  width:48px;
  height:48px;
  flex:0 0 48px;
  border-radius:50%;
  overflow:hidden;
  display:grid;
  place-items:center;
  border:1px solid var(--ur-line);
  background:var(--ur-surface-2);
  color:var(--ur-ink);
  font-size:14px;
  font-weight:900;
}
#page-uprank .up-rank-detail-avatar img{width:100%;height:100%;object-fit:cover;display:block}
#page-uprank .up-rank-detail-user strong{
  display:block;
  color:var(--ur-ink);
  font-size:17px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.025em;
}
#page-uprank .up-rank-detail-user small{
  display:block;
  margin-top:4px;
  color:var(--ur-muted);
  font-size:10px;
  font-weight:650;
}
#page-uprank .up-rank-detail-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-bottom:1px solid var(--ur-line);
}
#page-uprank .up-rank-detail-metrics>div{
  min-width:0;
  padding:13px 9px;
  border-right:1px solid var(--ur-line);
}
#page-uprank .up-rank-detail-metrics>div:first-child{padding-left:0}
#page-uprank .up-rank-detail-metrics>div:last-child{border-right:0;padding-right:0}
#page-uprank .up-rank-detail-metrics span{
  display:block;
  color:var(--ur-muted);
  font-size:9px;
  font-weight:700;
  white-space:nowrap;
}
#page-uprank .up-rank-detail-metrics strong{
  display:block;
  margin-top:5px;
  color:var(--ur-ink);
  font-size:13px;
  font-weight:850;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#page-uprank #upRankDetailGroup[data-group="jindegi"]{color:var(--ur-pass)}
#page-uprank #upRankDetailGroup[data-group="jinho"]{color:var(--ur-accent)}
#page-uprank .up-rank-detail-comment{padding:15px 0}
#page-uprank .up-rank-detail-comment>span,#page-uprank .up-rank-detail-meta>span{
  color:var(--ur-muted);
  font-size:9px;
  font-weight:750;
}
#page-uprank .up-rank-detail-comment p{
  margin:7px 0 0;
  max-height:180px;
  overflow:auto;
  color:var(--ur-ink);
  font-size:12px;
  line-height:1.65;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
#page-uprank .up-rank-detail-meta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:11px 0;
  border-top:1px solid var(--ur-line);
}
#page-uprank .up-rank-detail-meta b{
  color:var(--ur-muted);
  font-size:10px;
  font-weight:700;
  text-align:right;
}
#page-uprank .up-rank-detail-link{
  width:100%;
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:7px;
  border:1px solid var(--ur-line);
  border-radius:10px;
  background:var(--ur-surface-2);
  color:var(--ur-ink)!important;
  text-decoration:none!important;
  font-size:11px;
  font-weight:850;
  transition:.18s ease;
}
#page-uprank .up-rank-detail-link:hover{border-color:var(--ur-accent);color:var(--ur-accent)!important}
#page-uprank .up-rank-detail-link.is-disabled{pointer-events:none;opacity:.45}
/* summary-only mode remains exactly a compact crew snapshot */
#page-uprank .up-rank-shell.is-summary-only .up-rank-workspace{display:none!important}
html[data-theme="dark"] #page-uprank .up-rank-detail,html.dark #page-uprank .up-rank-detail{
  background:#0d1420;
  border-color:#202735;
  box-shadow:0 16px 36px rgba(0,0,0,.22);
}
html[data-theme="dark"] #page-uprank .up-rank-detail-user,html[data-theme="dark"] #page-uprank .up-rank-detail-metrics,html[data-theme="dark"] #page-uprank .up-rank-detail-metrics>div,html[data-theme="dark"] #page-uprank .up-rank-detail-meta,html.dark #page-uprank .up-rank-detail-user,html.dark #page-uprank .up-rank-detail-metrics,html.dark #page-uprank .up-rank-detail-metrics>div,html.dark #page-uprank .up-rank-detail-meta{border-color:#202735}
html[data-theme="dark"] #page-uprank .up-rank-detail-avatar,html[data-theme="dark"] #page-uprank .up-rank-detail-link,html.dark #page-uprank .up-rank-detail-avatar,html.dark #page-uprank .up-rank-detail-link{background:#111824;border-color:#293244}
@media (max-width:1180px){#page-uprank .up-rank-workspace{grid-template-columns:minmax(0,1fr) 290px}
#page-uprank .ur-board-head,#page-uprank .ur-row{grid-template-columns:58px minmax(190px,1fr) 120px 96px!important}}
@media (max-width:900px){#page-uprank .up-rank-workspace{grid-template-columns:1fr}
#page-uprank .up-rank-detail{position:static;order:-1}
#page-uprank .up-rank-detail-empty{min-height:150px}
#page-uprank .up-rank-summary{flex-wrap:wrap!important}
#page-uprank .up-rank-summary article{flex:1 1 33.333%!important;border-bottom:1px solid var(--ur-line)!important}}
@media (max-width:700px){#page-uprank .ur-board-head{grid-template-columns:48px minmax(0,1fr) 82px!important}
#page-uprank .ur-board-head>span:nth-child(3){display:none}
#page-uprank .ur-row{grid-template-columns:48px minmax(0,1fr) 82px!important;gap:8px!important;padding:9px 10px!important}
#page-uprank .ur-row .ur-time{display:none}
#page-uprank .up-rank-detail-content{padding:15px}
#page-uprank .up-rank-detail-metrics{grid-template-columns:1fr 1fr}
#page-uprank .up-rank-detail-metrics>div:nth-child(3){grid-column:1/-1;border-top:1px solid var(--ur-line);border-right:0;padding-left:0}
#page-uprank .up-rank-summary article{flex:1 1 50%!important}}
/* ============================================================
   v23.21 · participant detail readability / sticky / attachments
   ============================================================ */
#page-uprank .up-rank-workspace{
  grid-template-columns:minmax(0,1fr) 390px!important;
  align-items:start!important;
  overflow:visible!important;
}
#page-uprank .up-rank-ranking-column{overflow:visible!important}
#page-uprank .up-rank-detail{
  position:sticky!important;
  top:82px!important;
  align-self:start!important;
  height:max-content!important;
  max-height:calc(100vh - 100px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  z-index:8;
}
#page-uprank .up-rank-detail::-webkit-scrollbar{width:7px}
#page-uprank .up-rank-detail::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ur-muted) 35%,transparent);border-radius:999px}
#page-uprank .up-rank-detail-content{padding:22px!important}
#page-uprank .up-rank-detail-kicker{font-size:10px!important;letter-spacing:.16em!important}
#page-uprank .up-rank-detail-user{gap:14px!important;padding:14px 0 18px!important}
#page-uprank .up-rank-detail-avatar{
  width:58px!important;height:58px!important;flex-basis:58px!important;
}
#page-uprank .up-rank-detail-user strong{font-size:20px!important;line-height:1.15!important}
#page-uprank .up-rank-detail-user small{font-size:12px!important;margin-top:5px!important}
#page-uprank .up-rank-detail-metrics>div{padding:15px 10px!important}
#page-uprank .up-rank-detail-metrics span{font-size:10px!important}
#page-uprank .up-rank-detail-metrics strong{font-size:15px!important;margin-top:6px!important}
#page-uprank .up-rank-detail-comment{padding:18px 0!important}
#page-uprank .up-rank-detail-comment>span,#page-uprank .up-rank-detail-meta>span,#page-uprank .up-rank-detail-attachments-head>span{
  font-size:10px!important;font-weight:800!important;letter-spacing:.01em;
}
#page-uprank .up-rank-detail-comment p{
  margin-top:9px!important;
  max-height:none!important;
  overflow:visible!important;
  font-size:14px!important;
  line-height:1.78!important;
  font-weight:650!important;
}
#page-uprank .up-rank-detail-meta{padding:13px 0!important}
#page-uprank .up-rank-detail-meta b{font-size:11px!important}
#page-uprank .up-rank-detail-link{min-height:44px!important;font-size:12px!important}
#page-uprank .up-rank-detail-attachments{
  padding:0 0 18px;
  border-top:1px solid var(--ur-line);
}
#page-uprank .up-rank-detail-attachments[hidden]{display:none!important}
#page-uprank .up-rank-detail-attachments-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 0 10px;
}
#page-uprank .up-rank-detail-attachments-head b{
  color:var(--ur-muted);font-size:10px;font-weight:750;
}
#page-uprank .up-rank-detail-image-grid{
  display:grid;grid-template-columns:1fr;gap:8px;
}
#page-uprank .up-rank-detail-image-grid a{
  display:block;overflow:hidden;border:1px solid var(--ur-line);border-radius:11px;
  background:var(--ur-surface-2);text-decoration:none;
}
#page-uprank .up-rank-detail-image-grid img{
  display:block;width:100%;max-height:360px;object-fit:contain;background:#080b10;
}
@media (max-width:1280px){#page-uprank .up-rank-workspace{grid-template-columns:minmax(0,1fr) 350px!important}}
@media (max-width:900px){#page-uprank .up-rank-workspace{grid-template-columns:1fr!important}
#page-uprank .up-rank-detail{
    position:static!important;order:-1!important;max-height:none!important;overflow:visible!important;
  }}
/* ============================================================
   v23.22 · sticky detail root fix + large readable detail
   ============================================================ */
/* overflow-x:hidden creates a non-scrolling overflow ancestor and breaks position:sticky.
   clip keeps horizontal clipping without becoming the sticky scroll container. */
#page-uprank.up-rank-page{
  overflow:visible!important;
  overflow-x:clip!important;
}
#page-uprank .up-rank-shell,#page-uprank .up-rank-panel,#page-uprank .up-rank-workspace,#page-uprank .up-rank-ranking-column{
  overflow:visible!important;
}
#page-uprank .up-rank-workspace{
  grid-template-columns:minmax(0,1fr) 430px!important;
}
#page-uprank .up-rank-detail{
  position:sticky!important;
  top:92px!important;
  max-height:calc(100vh - 112px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  z-index:20!important;
}
#page-uprank .up-rank-detail-content{padding:24px!important}
#page-uprank .up-rank-detail-user strong{font-size:22px!important}
#page-uprank .up-rank-detail-user small{font-size:13px!important}
#page-uprank .up-rank-detail-metrics span{font-size:11px!important}
#page-uprank .up-rank-detail-metrics strong{font-size:16px!important}
#page-uprank .up-rank-detail-comment>span,#page-uprank .up-rank-detail-meta>span,#page-uprank .up-rank-detail-attachments-head>span{font-size:11px!important}
#page-uprank .up-rank-detail-comment p{
  font-size:16px!important;
  line-height:1.8!important;
  font-weight:620!important;
}
#page-uprank .up-rank-detail-meta b{font-size:12px!important}
#page-uprank .up-rank-detail-link{font-size:13px!important;min-height:46px!important}
#page-uprank .up-rank-detail-image-grid img{
  width:100%!important;
  max-height:460px!important;
  min-height:120px;
  object-fit:contain!important;
}
@media (max-width:1380px){#page-uprank .up-rank-workspace{grid-template-columns:minmax(0,1fr) 380px!important}
#page-uprank .up-rank-detail-comment p{font-size:15px!important}}
@media (max-width:900px){#page-uprank.up-rank-page{overflow-x:hidden!important}
#page-uprank .up-rank-detail{position:static!important;max-height:none!important;overflow:visible!important}}
/* ============================================================
   v23.23 · hard viewport dock
   JS applies this class while the ranking list is in view.
   ============================================================ */
#page-uprank .up-rank-detail.is-viewport-docked{
  position:fixed!important;
  top:var(--ur-detail-top,92px)!important;
  right:var(--ur-detail-right,24px)!important;
  left:auto!important;
  width:var(--ur-detail-width,390px)!important;
  max-width:calc(100vw - 32px)!important;
  max-height:calc(100vh - var(--ur-detail-top,92px) - 20px)!important;
  overflow:auto!important;
  z-index:88!important;
  box-shadow:0 20px 56px rgba(0,0,0,.18)!important;
}
#page-uprank .up-rank-detail.is-viewport-docked .up-rank-detail-comment p{
  font-size:16px!important;
  line-height:1.82!important;
}
#page-uprank .up-rank-detail-attachments{
  margin-top:4px!important;
}
#page-uprank .up-rank-detail-image-grid img{
  min-height:0!important;
  max-height:420px!important;
}
@media(max-width:900px){#page-uprank .up-rank-detail.is-viewport-docked{
    position:static!important;
    width:auto!important;
    max-width:none!important;
    max-height:none!important;
  }}
/* ============================================================
   v23.24 · ranking list internal scroll
   Top 3 + participant detail stay visible; only ranks 4+ scroll.
   ============================================================ */
/* Cancel the previous viewport-fixed participant panel. */
#page-uprank .up-rank-detail,#page-uprank .up-rank-detail.is-viewport-docked{
  position:sticky!important;
  top:92px!important;
  right:auto!important;
  left:auto!important;
  width:auto!important;
  max-width:none!important;
  max-height:min(78vh,820px)!important;
  overflow:auto!important;
  z-index:20!important;
  box-shadow:0 12px 30px rgba(28,20,31,.08)!important;
}
/* The podium stays outside the scrolling body. */
#page-uprank .up-rank-ranking-column{
  min-width:0!important;
  overflow:visible!important;
}
/* Table header remains still while only the actual rows move. */
#page-uprank .ur-board-wrap{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:visible!important;
}
#page-uprank .ur-board-head{
  flex:0 0 auto!important;
  position:relative!important;
  z-index:3!important;
  margin:0!important;
  background:var(--ur-bg)!important;
}
/* This is the exact area shown in the user's third screenshot. */
#page-uprank #upRankRows{
  height:clamp(430px,62vh,720px)!important;
  max-height:calc(100vh - 300px)!important;
  min-height:360px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding-right:6px!important;
  scroll-behavior:smooth!important;
}
#page-uprank #upRankRows::-webkit-scrollbar{
  width:9px!important;
}
#page-uprank #upRankRows::-webkit-scrollbar-track{
  background:transparent!important;
}
#page-uprank #upRankRows::-webkit-scrollbar-thumb{
  border:2px solid transparent!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--ur-muted) 38%,transparent)!important;
  background-clip:padding-box!important;
}
#page-uprank #upRankRows::-webkit-scrollbar-thumb:hover{
  background:color-mix(in srgb,var(--ur-accent) 58%,var(--ur-muted))!important;
  background-clip:padding-box!important;
}
/* A subtle visual boundary makes it clear that the list itself is scrollable. */
#page-uprank .ur-board-wrap{
  position:relative!important;
}
#page-uprank .ur-board-wrap::after{
  content:"";
  pointer-events:none;
  position:absolute;
  left:0;
  right:8px;
  bottom:0;
  height:28px;
  z-index:4;
  background:linear-gradient(to bottom,transparent,var(--ur-bg));
  opacity:.72;
}
/* Keep detail text/image available while the ranking list moves independently. */
#page-uprank .up-rank-detail-content{
  max-height:none!important;
}
#page-uprank .up-rank-detail-image-grid img{
  max-height:420px!important;
  object-fit:contain!important;
}
/* Light mode */
html[data-theme="light"] #page-uprank .ur-board-head{
  background:#f7f4f5!important;
}
html[data-theme="light"] #page-uprank .ur-board-wrap::after{
  background:linear-gradient(to bottom,rgba(247,244,245,0),#f7f4f5)!important;
}
/* On smaller layouts use normal page flow again. */
@media(max-width:900px){#page-uprank #upRankRows{
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    padding-right:0!important;
  }
#page-uprank .ur-board-wrap::after{display:none!important}
#page-uprank .up-rank-detail,#page-uprank .up-rank-detail.is-viewport-docked{
    position:static!important;
    max-height:none!important;
    overflow:visible!important;
  }}
/* ============================================================
   v23.25 · real internal ranking scroll viewport
   The generated #upRankRows is wrapped in .up-rank-rows-scroll.
   Only ranks 4+ move; podium/detail remain outside.
   ============================================================ */
#page-uprank .up-rank-rows-scroll{
  display:block!important;
  width:100%!important;
  height:clamp(430px,58vh,680px)!important;
  max-height:calc(100vh - 300px)!important;
  min-height:360px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scroll-behavior:smooth!important;
  position:relative!important;
  padding-right:6px!important;
}
#page-uprank .up-rank-rows-scroll #upRankRows{
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  padding-right:0!important;
}
#page-uprank .up-rank-rows-scroll::-webkit-scrollbar{
  width:10px!important;
}
#page-uprank .up-rank-rows-scroll::-webkit-scrollbar-track{
  background:color-mix(in srgb,var(--ur-surface) 55%,transparent)!important;
  border-radius:999px!important;
}
#page-uprank .up-rank-rows-scroll::-webkit-scrollbar-thumb{
  border:2px solid transparent!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--ur-muted) 48%,var(--ur-line))!important;
  background-clip:padding-box!important;
}
#page-uprank .up-rank-rows-scroll::-webkit-scrollbar-thumb:hover{
  background:color-mix(in srgb,var(--ur-accent) 56%,var(--ur-muted))!important;
  background-clip:padding-box!important;
}
/* Old rule targeted #upRankRows directly; neutralize it. */
#page-uprank #upRankRows{
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
}
/* Keep participant detail beside the internal list. */
#page-uprank .up-rank-detail,#page-uprank .up-rank-detail.is-viewport-docked{
  position:sticky!important;
  top:92px!important;
  right:auto!important;
  left:auto!important;
  width:auto!important;
  max-width:none!important;
  max-height:calc(100vh - 112px)!important;
  overflow:auto!important;
}
/* Do not let the old gradient mask cover the scrollbar/list bottom. */
#page-uprank .ur-board-wrap::after{display:none!important}
@media(max-width:900px){#page-uprank .up-rank-rows-scroll{
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    padding-right:0!important;
  }}

/* ===== activity-events.css ===== */
/* v21.26 Recent Events + Auto Stats */
.activity-page{max-width:1540px;margin:0 auto;padding-bottom:50px}
#activityAlertButton.active{background:#2e7d32;color:#fff;border-color:#2e7d32}
.activity-status-row{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#98858d;font-size:13px}
.activity-status-row span{padding:6px 9px;border:1px solid #eee2e6;background:rgba(255,255,255,.65);border-radius:999px}
.activity-status-row #activityCollectorState[data-state="error"]{color:#be4259}
.activity-status-row #activityCollectorState[data-state="warn"]{color:#a66a18;border-color:#efd8ad;background:rgba(255,248,232,.78)}
.activity-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}
.activity-feed-panel{min-width:0;padding:0;overflow:hidden}
.activity-feed-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid #eee3e7}
.activity-feed-toolbar>div{display:flex;align-items:center;gap:7px}
.activity-feed-toolbar button{border:1px solid #eadde2;background:#fff;border-radius:10px;padding:8px 10px;font-size:13px;font-weight:900;color:#75636b;cursor:pointer}
.activity-feed-toolbar strong{font-size:14px;color:#46383e}
.activity-feed{display:flex;flex-direction:column}
.activity-card{position:relative;display:grid;grid-template-columns:40px 48px minmax(0,1fr) 24px;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid #f0e7ea;background:rgba(255,255,255,.76);transition:.18s ease}
.activity-card.is-unread{background:linear-gradient(90deg,rgba(255,237,244,.95),rgba(255,255,255,.82))}
.activity-card.is-unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#e55279}
.activity-type-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;font-size:12px;font-weight:1000;letter-spacing:.02em;background:#f3edef;color:#68575f}
.activity-card[data-tone="live"] .activity-type-icon{background:#ffe9ee;color:#df345e}
.activity-card[data-tone="off"] .activity-type-icon{background:#f0f1f3;color:#6d737b}
.activity-card[data-tone="title"] .activity-type-icon{background:#eef2ff;color:#5864c2}
.activity-card[data-tone="category"] .activity-type-icon{background:#ebf7f0;color:#2e7d55}
.activity-card[data-tone="mode"] .activity-type-icon{background:#fff2dc;color:#a26911}
.activity-avatar{width:46px;height:46px;object-fit:cover;border-radius:14px;background:#f5edef;border:1px solid #eadde2}
.activity-card-copy{min-width:0}
.activity-post-category{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:999px;background:#eef6ff;border:1px solid #d7e8ff;color:#2a6aa0;font-size:12px;font-weight:800;letter-spacing:.01em}
.activity-card h3{margin:0;font-size:15px;line-height:1.45;color:#3d3036}
.activity-card p{margin:4px 0 0;font-size:14px;line-height:1.55;color:#77656d;white-space:pre-line}
.activity-card small{display:block;margin-top:5px;color:#a18e96}
.activity-empty{padding:70px 20px;text-align:center;color:#9d8b92}
.activity-empty b,.activity-empty span{display:block}
.activity-empty b{color:#5e4e55;margin-bottom:7px}
.activity-filter-panel{position:sticky;top:90px;padding:15px}
.activity-filter-panel h3{margin:0 0 11px;font-size:14px}
.activity-filter-panel section+section{margin-top:18px;padding-top:16px;border-top:1px solid #eee1e6}
.activity-filter-list{display:flex;flex-direction:column;gap:6px}
.activity-filter-list button{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;background:transparent;border-radius:10px;padding:9px 10px;text-align:left;font-size:13px;font-weight:800;color:#79666e;cursor:pointer}
.activity-filter-list button:hover{background:#f9f2f5}
.activity-filter-list button.active{background:#312b2e;color:#fff}
.activity-filter-list span{font-size:12px;opacity:.7}
.activity-filter-note{margin-top:16px;padding:11px;border-radius:11px;background:#faf5f7;font-size:12px;line-height:1.55;color:#8b737d}
.sidebar-tab[data-page="activity"]{position:relative}
.activity-stats-empty{padding:30px 8px;text-align:center;color:#6b555e;font-size:13px}
html[data-theme="dark"] .activity-feed-toolbar button,html[data-theme="dark"] .activity-card{background:#0f1520;border-color:#263242;color:#e9edf2}
html[data-theme="dark"] .activity-card.is-unread{background:linear-gradient(90deg,rgba(113,33,51,.42),rgba(15, 21, 32, .94))}
html[data-theme="dark"] .activity-filter-list button:hover,html[data-theme="dark"] .activity-filter-note{background:#182231}
html[data-theme="dark"] .activity-filter-list button.active{background:#e9edf2;color:#0f1520}
html[data-theme="dark"] .activity-card h3{color:#f1f3f6}
html[data-theme="dark"] .activity-card p{color:#667284}
html[data-theme="dark"] .activity-post-category{background:rgba(39,94,142,.22);border-color:rgba(132,179,229,.22);color:#a9d1ff}
@media(max-width:1000px){.activity-layout{grid-template-columns:1fr}
.activity-filter-panel{position:static;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.activity-filter-panel section+section{margin:0;padding:0;border:0}
.activity-filter-note{grid-column:1/-1}}
@media(max-width:768px){
.activity-page{padding:0 6px 92px}
.activity-layout{gap:9px}
.activity-filter-panel{grid-template-columns:1fr;padding:12px}
.activity-filter-list{display:grid;grid-template-columns:repeat(2,1fr)}
.activity-filter-note{grid-column:auto}
.activity-card{grid-template-columns:34px 40px minmax(0,1fr) 16px;gap:8px;padding:13px 10px}
.activity-type-icon{width:32px;height:32px;border-radius:9px;font-size:12px}
.activity-avatar{width:38px;height:38px;border-radius:11px}
.activity-card h3{font-size:14px}
.activity-card p{font-size:12px}
.activity-feed-toolbar{padding:10px;flex-wrap:wrap}}
/* v2178 — Chuntaverse-inspired member statistics layout */
#page-stats{--ct-line:#eadde2;--ct-soft:#faf6f7;--ct-panel:#fff;--ct-ink:#342a2f;--ct-muted:#6b555e;--ct-accent:#e24d78;--ct-accent-soft:#fff0f5}
.ct-stats-shell{display:flex;flex-direction:column;gap:14px;min-width:0}
.ct-member-strip{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:14px;overflow:hidden}
.ct-member-shortcut-list{display:flex;gap:5px;overflow-x:auto;scrollbar-width:thin;padding:1px 2px;flex:1}
.ct-member-shortcut-list::-webkit-scrollbar{height:5px}
.ct-member-shortcut{flex:0 0 54px;border:1px solid transparent;background:transparent;border-radius:10px;padding:5px 3px;cursor:pointer;color:var(--ct-muted);transition:.16s ease}
.ct-member-shortcut:hover{background:var(--ct-soft);border-color:var(--ct-line);transform:translateY(-1px)}
.ct-member-shortcut img,.ct-member-shortcut>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;margin:auto;object-fit:cover}
.ct-member-shortcut small{display:block;margin-top:4px;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-member-shortcut.is-all{border-color:#b7dfd0;background:#effbf6;color:#307e66}
.ct-member-shortcut.is-all span{font-size:18px;background:#42d3ad;color:#09261e}
.ct-period-row{display:grid;grid-template-columns:190px minmax(0,1fr) 64px;gap:8px;align-items:stretch}
.ct-year-nav{height:42px;border:1px solid var(--ct-line);background:var(--ct-panel);display:grid;grid-template-columns:36px 1fr 36px;align-items:center;border-radius:10px}
.ct-year-nav button,.ct-now-button,.ct-month-tabs button{border:0;background:transparent;color:var(--ct-muted);font-weight:900;cursor:pointer}
.ct-year-nav strong{text-align:center;color:var(--ct-ink);font-size:14px}
.ct-month-tabs{display:grid;grid-template-columns:repeat(13,minmax(42px,1fr));gap:5px}
.ct-month-tabs button{border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:8px;font-size:12px;transition:.15s}
.ct-month-tabs button:hover{background:var(--ct-soft)}
.ct-month-tabs button.active{border-color:#3dbfa3;background:#effbf7;color:#22715f;box-shadow:inset 0 0 0 1px rgba(61,191,163,.15)}
.ct-now-button{border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:8px;font-size:12px}
.ct-now-button:hover{background:var(--ct-soft)}
.ct-summary-row{display:grid;grid-template-columns:minmax(150px,1.25fr) repeat(5,minmax(105px,1fr));border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:12px;overflow:hidden}
.ct-summary-title{padding:11px 14px;border-right:1px solid var(--ct-line)}
.ct-summary-title span,.ct-grid-head span{font-size:12px;letter-spacing:.17em;font-weight:900;color:var(--ct-accent)}
.ct-summary-title strong{display:block;margin:3px 0 1px;font-size:14px}
.ct-summary-title small{font-size:12px;color:var(--ct-muted)}
.ct-summary-row>button{border:0;border-left:1px solid var(--ct-line);background:transparent;padding:10px 12px;text-align:left}
.ct-summary-row>button span{display:block;font-size:12px;color:var(--ct-muted)}
.ct-summary-row>button strong{display:block;margin-top:3px;font-size:15px;color:var(--ct-ink);white-space:nowrap}
.ct-grid-head{display:flex;align-items:flex-end;justify-content:space-between;margin:5px 0 0}
.ct-grid-head h2{margin:3px 0 0;font-size:17px;color:var(--ct-ink)}
.ct-grid-head p{margin:0;font-size:12px;color:var(--ct-muted)}
.ct-member-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.ct-member-card{min-width:0;border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:12px;padding:12px;transition:.18s ease}
.ct-member-card:hover{border-color:#d9bcc6;box-shadow:0 8px 24px rgba(86,57,68,.06);transform:translateY(-1px)}
.ct-member-card.is-jump-target{outline:2px solid #48c9a8;outline-offset:2px;box-shadow:0 0 0 6px rgba(72,201,168,.12)}
.ct-member-card header{display:flex;justify-content:space-between;align-items:center;padding-bottom:9px;border-bottom:1px solid #f1e8eb}
.ct-member-id{display:flex;align-items:center;gap:9px;min-width:0}
.ct-member-id img{width:38px;height:38px;border-radius:9px;object-fit:cover;background:var(--ct-soft)}
.ct-member-id div{min-width:0}
.ct-member-id strong{display:block;font-size:14px;color:var(--ct-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-member-id small{display:block;margin-top:2px;font-size:12px;color:var(--ct-muted)}
.ct-member-card header>em{font-style:normal;font-size:12px;font-weight:900;color:#c4aab3}
.ct-live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#2ccc85;margin-right:3px;box-shadow:0 0 0 3px rgba(44,204,133,.12)}
.ct-metric-list{display:flex;flex-direction:column;margin-top:10px;line-height:1.5}
.ct-metric-list button{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:8px;border:0;border-bottom:1px solid #f4edef;background:transparent;padding:5px 2px;cursor:pointer;text-align:left}
.ct-metric-list button:last-child{border-bottom:0}
.ct-metric-list button:hover{background:var(--ct-soft);margin-inline:-5px;padding-inline:7px;border-radius:7px}
.ct-metric-list span{font-size:12px;color:var(--ct-muted);letter-spacing:-.01em}
.ct-metric-list strong{font-size:14px;font-weight:800;color:var(--ct-ink);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.015em}
.ct-rank{justify-self:end;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:950;background:#eee;color:#777}
.ct-rank-1{background:#fff0b8;color:#9a6900}
.ct-rank-2{background:#eceff3;color:#69717d}
.ct-rank-3{background:#f6dfcf;color:#9a5d35}
.ct-trend-backdrop{position:fixed;inset:0;z-index:10020;background:rgba(23,17,20,.44);display:grid;place-items:center;padding:20px}
.ct-trend-modal{position:relative;width:min(760px,92vw);border:1px solid var(--ct-line);border-radius:18px;background:var(--ct-panel);box-shadow:0 24px 80px rgba(39,21,28,.22);padding:20px}
.ct-trend-close{position:absolute;right:14px;top:12px;width:32px;height:32px;border:1px solid var(--ct-line);border-radius:9px;background:var(--ct-panel);font-size:18px;cursor:pointer}
.ct-trend-modal header{display:flex;align-items:center;gap:12px;padding-right:40px}
.ct-trend-modal header img{width:48px;height:48px;border-radius:12px;object-fit:cover}
.ct-trend-modal header span{font-size:12px;letter-spacing:.16em;color:var(--ct-accent);font-weight:900}
.ct-trend-modal header h2{margin:3px 0 1px;font-size:18px}
.ct-trend-modal header p{margin:0;font-size:12px;color:var(--ct-muted)}
html[data-theme="dark"] #page-stats{--ct-line:#263242;--ct-soft:#131b27;--ct-panel:#0f1520;--ct-ink:#e9edf2;--ct-muted:#788291;--ct-accent:#ef597f;--ct-accent-soft:#2d1720}
html[data-theme="dark"] .ct-member-shortcut.is-all{background:#12352d;border-color:#286b59;color:#9aebd4}
html[data-theme="dark"] .ct-member-shortcut.is-all span{background:#39c9a6;color:#071c17}
html[data-theme="dark"] .ct-month-tabs button.active{background:#14372f;border-color:#3cc4a3;color:#9cebd7}
html[data-theme="dark"] .ct-member-card header{border-color:#182231}
html[data-theme="dark"] .ct-metric-list button{border-color:#182231}
@media(min-width:1700px){.ct-member-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1350px){.ct-member-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.ct-summary-row{grid-template-columns:repeat(5,1fr)}
.ct-summary-title{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--ct-line)}
.ct-period-row{grid-template-columns:170px 1fr 58px}
.ct-month-tabs{overflow-x:auto;display:flex}
.ct-month-tabs button{min-width:48px;padding:0 9px}}
@media(max-width:980px){.ct-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-period-row{grid-template-columns:1fr}
.ct-year-nav{width:180px}
.ct-now-button{height:38px;width:70px}
.ct-summary-row{grid-template-columns:repeat(3,1fr)}
.ct-summary-title{grid-column:1/-1}}
@media(max-width:720px){.ct-member-strip{padding:8px}
.ct-member-shortcut{flex-basis:48px}
.ct-member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.ct-member-card{padding:10px}
.ct-summary-row{grid-template-columns:repeat(2,1fr)}
.ct-summary-row>button:last-child{grid-column:1/-1}
.ct-grid-head{align-items:flex-start;flex-direction:column;gap:3px}}
@media(max-width:460px){.ct-member-grid{grid-template-columns:1fr}
.ct-month-tabs button{min-width:43px}
.ct-summary-row{grid-template-columns:1fr 1fr}}
/* v2179 · 통계 도감 프로필 + 멤버 상세 방송 통계 */
.ct-member-shortcut.active{background:var(--ct-soft);border-color:#7dd8c2;color:var(--ct-ink);box-shadow:inset 0 0 0 1px rgba(61,191,163,.18)}
.ct-member-shortcut.active img{outline:2px solid #49c8a8;outline-offset:2px}
.ct-member-card{padding:0;overflow:hidden}
.ct-member-card-head{width:100%;border:0;background:transparent;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:12px 12px 10px;border-bottom:1px solid #f1e8eb;text-align:left;cursor:pointer;color:inherit}
.ct-member-card-head:hover{background:var(--ct-soft)}
.ct-member-card-head .ct-member-id{display:flex}
.ct-member-card-head .ct-member-id>span{min-width:0}
.ct-member-card-head .ct-member-id img{width:40px;height:40px;border-radius:10px;object-fit:cover;background:var(--ct-soft)}
.ct-member-card-head .ct-member-id strong{display:block;font-size:14px;color:var(--ct-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-member-card-head .ct-member-id small{display:block;margin-top:2px;font-size:12px;color:var(--ct-muted)}
.ct-member-card-head>em{font-style:normal;font-size:12px;font-weight:900;color:#c4aab3}
.ct-member-card-head>i{font-style:normal;font-size:12px;font-weight:900;color:#b07d8c}
.ct-member-card .ct-metric-list{padding:6px 14px 10px;margin-top:0}
.ct-member-detail{gap:12px}
.ct-detail-hero{position:relative;display:grid;grid-template-columns:auto 62px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:16px;padding:16px}
.ct-detail-back{height:36px;padding:0 12px;border:1px solid var(--ct-line);border-radius:9px;background:var(--ct-panel);font-size:12px;font-weight:900;color:var(--ct-muted);cursor:pointer}
.ct-detail-back:hover{background:var(--ct-soft);color:var(--ct-ink)}
.ct-detail-hero>img{width:62px;height:62px;border-radius:15px;object-fit:cover;background:var(--ct-soft);box-shadow:0 7px 18px rgba(37,27,31,.08)}
.ct-detail-hero>div>span,.ct-detail-panel header span{font-size:12px;letter-spacing:.17em;font-weight:900;color:var(--ct-accent)}
.ct-detail-hero h2{margin:3px 0 2px;font-size:20px;color:var(--ct-ink)}
.ct-detail-hero p{margin:0;font-size:12px;color:var(--ct-muted)}
.ct-detail-live{font-size:12px;color:#20b975;background:#eafaf3;border:1px solid #bcebd8;border-radius:999px;padding:7px 10px}
.ct-period-row.is-detail{grid-template-columns:190px minmax(0,1fr) 64px}
.ct-detail-summary{margin-top:0}
.ct-detail-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr);gap:12px}
.ct-detail-panel{border:1px solid var(--ct-line);background:var(--ct-panel);border-radius:15px;padding:15px;min-width:0}
.ct-detail-panel>header{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}
.ct-detail-panel header h3{margin:3px 0 0;font-size:17px;color:var(--ct-ink)}
.ct-detail-panel header p{margin:0;max-width:60%;font-size:12px;color:var(--ct-muted);text-align:right}
.ct-cal-week,.ct-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.ct-cal-week{margin-bottom:5px}
.ct-cal-week span{text-align:center;font-size:12px;font-weight:900;color:var(--ct-muted);padding:4px}
.ct-cal-day,.ct-cal-empty{min-height:72px;border-radius:9px}
.ct-cal-day{border:1px solid var(--ct-line);background:var(--ct-panel);padding:7px;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto;align-items:start;text-align:left;cursor:pointer;color:var(--ct-ink);transition:.15s ease}
.ct-cal-day:hover{background:var(--ct-soft);transform:translateY(-1px)}
.ct-cal-day>b{font-size:12px}
.ct-cal-day>i{font-style:normal;font-size:12px;font-weight:900;color:var(--ct-muted)}
.ct-cal-day>small{grid-column:1/-1;align-self:end;font-size:12px;color:var(--ct-muted)}
.ct-cal-day.has-broadcast{background:linear-gradient(180deg,#f7fffb,#f0fbf7);border-color:#9fdcc9;box-shadow:inset 3px 0 0 #43c6a3}
.ct-cal-day.has-broadcast>b{color:#177c64}
.ct-cal-day.has-broadcast>i{color:#218d72}
.ct-cal-day.active{outline:2px solid #e85c84;outline-offset:1px;box-shadow:0 0 0 5px rgba(232,92,132,.08),inset 3px 0 0 #43c6a3}
.ct-hour-chart{height:260px;display:grid;grid-template-columns:repeat(8,1fr);align-items:end;gap:7px;padding-top:10px}
.ct-hour-chart>div{height:100%;display:grid;grid-template-rows:22px 1fr 23px;align-items:end;text-align:center;min-width:0}
.ct-hour-chart strong{font-size:12px;color:var(--ct-muted)}
.ct-hour-chart i{height:100%;display:flex;align-items:flex-end;background:linear-gradient(180deg,transparent,var(--ct-soft));border-radius:6px;overflow:hidden}
.ct-hour-chart b{display:block;width:100%;min-height:2px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#48c9a8,#88dfc8)}
.ct-hour-chart span{font-size:12px;color:var(--ct-muted);white-space:nowrap}
.ct-day-panel{padding-bottom:16px}
.ct-day-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ct-day-columns>div{min-width:0}
.ct-day-columns h4{margin:0 0 8px;font-size:12px;color:var(--ct-muted)}
.ct-day-record,.ct-day-event{display:grid;gap:3px;border:1px solid var(--ct-line);border-radius:10px;background:var(--ct-panel);padding:10px;margin-top:6px;color:inherit;text-decoration:none}
.ct-day-record:hover,.ct-day-event:hover{background:var(--ct-soft)}
.ct-day-record b{font-size:13px;color:var(--ct-ink)}
.ct-day-record span{font-size:12px;color:var(--ct-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-day-record em{font-style:normal;font-size:12px;color:var(--ct-muted)}
.ct-day-event{grid-template-columns:72px 78px minmax(0,1fr);align-items:center}
.ct-day-event time{font-size:12px;color:var(--ct-muted)}
.ct-day-event b{font-size:12px;color:var(--ct-accent)}
.ct-day-event span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-day-event-tag{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:20px;padding:0 7px;border-radius:999px;background:var(--ct-soft);border:1px solid var(--ct-line);color:var(--ct-accent);font-size:12px;font-style:normal;font-weight:800}
.ct-day-empty,.ct-day-placeholder{border:1px dashed var(--ct-line);border-radius:10px;padding:18px;text-align:center;color:var(--ct-muted);font-size:12px;background:var(--ct-soft)}
.ct-day-placeholder{padding:28px 18px}
html[data-theme="dark"] .ct-member-card-head{border-color:#182231}
html[data-theme="dark"] .ct-cal-day.has-broadcast{background:linear-gradient(180deg,#13251f,#14221d);border-color:#2e6c5a}
html[data-theme="dark"] .ct-cal-day.active{outline-color:#ef597f;box-shadow:0 0 0 5px rgba(239,89,127,.1),inset 3px 0 0 #43c6a3}
html[data-theme="dark"] .ct-detail-live{background:#102c21;border-color:#245e49;color:#84e7bd}
@media(max-width:1180px){.ct-detail-grid{grid-template-columns:1fr}
.ct-hour-chart{height:220px}}
@media(max-width:820px){.ct-detail-hero{grid-template-columns:auto 54px 1fr}
.ct-detail-hero>img{width:54px;height:54px}
.ct-detail-live{display:none}
.ct-day-columns{grid-template-columns:1fr}
.ct-cal-day,.ct-cal-empty{min-height:62px}}
@media(max-width:560px){.ct-detail-hero{grid-template-columns:1fr 52px minmax(0,1fr);padding:12px}
.ct-detail-back{grid-column:1/-1;justify-self:start}
.ct-detail-hero>img{width:52px;height:52px}
.ct-cal-day,.ct-cal-empty{min-height:52px}
.ct-cal-day{padding:5px}
.ct-cal-day small{display:none}
.ct-hour-chart{gap:3px;height:180px}
.ct-hour-chart strong{display:none}
.ct-hour-chart span{font-size:12px}
.ct-day-event{grid-template-columns:56px 62px minmax(0,1fr)}}
/* v2180 · 최근 활동 비주얼 필터 + 월별 그래프 포털 수정 */
#activityMemberFilters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#activityMemberFilters .activity-member-filter-btn{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px 4px 7px;border:1px solid transparent;border-radius:12px;background:transparent;color:#75636b;cursor:pointer;text-align:center;transition:.16s ease}
#activityMemberFilters .activity-member-filter-btn:hover{background:#f9f2f5;border-color:#eadde2;transform:translateY(-1px)}
#activityMemberFilters .activity-member-filter-btn.active{background:#fff2f6;border-color:#ed8da9;color:#4c3941;box-shadow:inset 0 0 0 1px rgba(226,77,120,.08)}
.activity-member-filter-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;object-fit:cover;background:#f5edef;border:1px solid #eadde2}
.activity-member-filter-btn.active .activity-member-filter-avatar{outline:2px solid #e65b82;outline-offset:2px}
.activity-filter-all-icon{font-size:19px;font-weight:1000;color:#fff;background:linear-gradient(135deg,#39c8aa,#63dac1);border-color:#b5eadc}
.activity-member-filter-btn strong{display:block;max-width:100%;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-member-filter-btn small{position:absolute;right:4px;top:4px;display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#f1e6ea;color:#9b7f89;font-size:12px;font-weight:900}
.activity-member-filter-btn.active small{background:#e65b82;color:#fff}
#activityTypeFilters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
#activityTypeFilters .activity-type-filter-btn{display:flex;align-items:center;gap:7px;min-width:0;border:1px solid #eee2e6;background:#fff;border-radius:11px;padding:8px;color:#715f67;cursor:pointer;text-align:left;transition:.16s ease}
#activityTypeFilters .activity-type-filter-btn:hover{background:#faf5f7;transform:translateY(-1px)}
#activityTypeFilters .activity-type-filter-btn.active{border-color:#d95b7f;background:#fff0f5;color:#513a43;box-shadow:inset 0 0 0 1px rgba(217,91,127,.08)}
.activity-filter-type-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:9px;background:#f4eef1;color:#74616a}
.activity-filter-type-icon svg,.activity-type-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.activity-filter-type-icon[data-tone="live"]{background:#ffe7ee;color:#db315d}
.activity-filter-type-icon[data-tone="off"]{background:#eef0f2;color:#687079}
.activity-filter-type-icon[data-tone="title"]{background:#eef1ff;color:#5865c8}
.activity-filter-type-icon[data-tone="category"]{background:#e9f7f0;color:#27805a}
.activity-filter-type-icon[data-tone="mode"]{background:#fff2dc;color:#a36a14}
.activity-type-filter-btn>span:last-child{min-width:0}
.activity-type-filter-btn strong,.activity-type-filter-btn small{display:block}
.activity-type-filter-btn strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.activity-type-filter-btn small{margin-top:2px;font-size:12px;color:#6d5860}
.activity-type-filter-btn.active small{color:#bd607b}
.activity-type-icon{font-size:0}
.activity-type-icon svg{width:20px;height:20px}
/* fixed modal is portaled to body so transformed page containers cannot push it off screen */
.ct-trend-backdrop[data-stat-trend-portal]{--ct-line:#eadde2;--ct-soft:#faf6f7;--ct-panel:#fff;--ct-ink:#342a2f;--ct-muted:#6b555e;--ct-accent:#e24d78;--ct-accent-soft:#fff0f5;position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px;background:rgba(24,18,21,.52);backdrop-filter:blur(3px)}
.ct-trend-backdrop[data-stat-trend-portal] .ct-trend-modal{display:block!important;position:relative!important;inset:auto!important;transform:none!important;margin:0!important;width:min(820px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--ct-line);border-radius:20px;background:var(--ct-panel);color:var(--ct-ink);box-shadow:0 30px 100px rgba(22,12,17,.28);padding:22px}
.ct-trend-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 6px}
.ct-trend-summary>span{border:1px solid var(--ct-line);border-radius:11px;background:var(--ct-soft);padding:10px 12px}
.ct-trend-summary small,.ct-trend-summary b{display:block}
.ct-trend-summary small{font-size:12px;color:var(--ct-muted)}
.ct-trend-summary b{margin-top:3px;font-size:14px;color:var(--ct-ink)}
.ct-trend-empty{margin:10px 0 0;padding:10px;border-radius:10px;background:var(--ct-soft);font-size:12px;color:var(--ct-muted);text-align:center}
html[data-theme="dark"] .ct-trend-backdrop[data-stat-trend-portal]{--ct-line:#263242;--ct-soft:#131b27;--ct-panel:#0f1520;--ct-ink:#e9edf2;--ct-muted:#788291;--ct-accent:#ef597f;--ct-accent-soft:#2d1720;background:rgba(2,5,4,.66)}
html[data-theme="dark"] #activityMemberFilters .activity-member-filter-btn:hover{background:#182231;border-color:#263242}
html[data-theme="dark"] #activityMemberFilters .activity-member-filter-btn.active{background:#2b171f;border-color:#aa4664;color:#f4e9ed}
html[data-theme="dark"] .activity-member-filter-avatar{background:#182231;border-color:#263242}
html[data-theme="dark"] .activity-member-filter-btn small{background:#182231;color:#a0a8b3}
html[data-theme="dark"] .activity-member-filter-btn.active small{background:#d95077;color:#fff}
html[data-theme="dark"] #activityTypeFilters .activity-type-filter-btn{background:#0f1520;border-color:#263242;color:#dfe4ea}
html[data-theme="dark"] #activityTypeFilters .activity-type-filter-btn:hover{background:#182231}
html[data-theme="dark"] #activityTypeFilters .activity-type-filter-btn.active{background:#2b171f;border-color:#aa4664;color:#f5e7ec}
html[data-theme="dark"] .activity-filter-type-icon{background:#182231}
@media(max-width:1000px){#activityMemberFilters{grid-template-columns:repeat(6,minmax(0,1fr))}
#activityTypeFilters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){#activityMemberFilters{grid-template-columns:repeat(4,minmax(0,1fr))}
#activityTypeFilters{grid-template-columns:repeat(2,minmax(0,1fr))}
.activity-member-filter-avatar{width:40px;height:40px}
.ct-trend-backdrop[data-stat-trend-portal]{padding:10px}
.ct-trend-backdrop[data-stat-trend-portal] .ct-trend-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);padding:15px}
.ct-trend-summary{grid-template-columns:1fr}}
/* v2181 · 도감 순서 고정 / 진드기 마크 / 최근 활동 상태 보강 */
.jindegi-mark-svg{display:block;width:25px;height:25px;overflow:visible}
.jindegi-mark-body{fill:currentColor;stroke:none}
.jindegi-mark-leg,.jindegi-mark-j{fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.jindegi-mark-j{stroke:#fff;stroke-width:2.25}
.activity-filter-all-icon{color:#2e7d32!important;background:#eaf5eb!important;border-color:#b9d7bd!important}
.activity-filter-all-icon .jindegi-mark-leg{stroke:#2e7d32}
.activity-filter-all-icon .jindegi-mark-body{fill:#2e7d32}
.ct-member-shortcut.is-all span{color:#2e7d32!important;background:#eaf5eb!important;border:1px solid #b9d7bd!important}
.ct-member-shortcut.is-all span .jindegi-mark-leg{stroke:#2e7d32}
.ct-member-shortcut.is-all span .jindegi-mark-body{fill:#2e7d32}
html[data-theme="dark"] .activity-filter-all-icon,html[data-theme="dark"] .ct-member-shortcut.is-all span{background:#18311d!important;border-color:#376c40!important;color:#66b76f!important}
html[data-theme="dark"] .activity-filter-all-icon .jindegi-mark-leg,html[data-theme="dark"] .ct-member-shortcut.is-all span .jindegi-mark-leg{stroke:#66b76f}
html[data-theme="dark"] .activity-filter-all-icon .jindegi-mark-body,html[data-theme="dark"] .ct-member-shortcut.is-all span .jindegi-mark-body{fill:#66b76f}
#page-stats{max-width:1540px;margin:0 auto;padding-bottom:56px}
.stats-view-switcher{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 16px;padding:8px;border:1px solid #eadde2;border-radius:16px;background:rgba(255,255,255,.76)}
.stats-view-tabs{display:flex;gap:6px;align-items:center}
.stats-view-tabs button,.stats-backfill-button{border:1px solid transparent;background:transparent;border-radius:11px;padding:10px 14px;font-size:13px;font-weight:900;color:#77646d;cursor:pointer;transition:.16s ease}
.stats-view-tabs button:hover,.stats-backfill-button:hover{background:#faf3f6}
.stats-view-tabs button.active{background:#302a2d;color:#fff;border-color:#302a2d;box-shadow:0 5px 14px rgba(55,39,46,.11)}
.stats-backfill-button{border-color:#dfe4ea;background:#f1faf2;color:#2e7d32}
.stats-backfill-button:hover{background:#e7f6e9;border-color:#b9d8bd}
.stats-view-panel[hidden]{display:none!important}
.stats-jinho-view-label{display:flex;align-items:baseline;gap:10px;margin:5px 0 12px;padding:0 3px}
.stats-jinho-view-label span{font-size:12px;font-weight:1000;letter-spacing:.18em;color:#d94c76}
.stats-jinho-view-label strong{font-size:17px;color:#3d3036}
.ct-stats-shell>.ct-member-strip+.ct-period-row{margin-top:12px}
.ct-stats-shell>.ct-period-row+.ct-grid-head{margin-top:22px}
.stats-backfill-modal{width:min(640px,calc(100vw - 28px));padding:25px}
.stats-backfill-modal>h2{margin:5px 0 8px;font-size:20px;letter-spacing:-.04em}
.stats-backfill-copy{margin:0;color:#806d75;font-size:14px;line-height:1.65}
.stats-backfill-notice{display:grid;gap:5px;margin:18px 0;padding:14px;border:1px solid #e7dce0;border-radius:13px;background:#faf6f7}
.stats-backfill-notice b{font-size:13px;color:#44363c}
.stats-backfill-notice span{font-size:13px;font-weight:800;color:#6c5962}
.stats-backfill-notice small{font-size:12px;line-height:1.55;color:#9a838d}
.stats-backfill-progress{margin:18px 0;padding:14px;border:1px solid #e7dce0;border-radius:13px;background:#fff}
.stats-backfill-progress>div{display:flex;justify-content:space-between;gap:12px;align-items:center}
.stats-backfill-progress span{font-size:13px;font-weight:900;color:#59464e}
.stats-backfill-progress strong{font-size:14px;color:#2e7d32}
.stats-backfill-progress>i{display:block;height:8px;margin:10px 0 7px;border-radius:999px;background:#f0e6e9;overflow:hidden}
.stats-backfill-progress>i>b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2e7d32,#62b56a);transition:width .2s ease}
.stats-backfill-progress small{display:block;color:#947d87;font-size:12px;line-height:1.5}
html[data-theme="dark"] .stats-view-switcher{background:#0f1520;border-color:#263242}
html[data-theme="dark"] .stats-view-tabs button,html[data-theme="dark"] .stats-backfill-button{color:#dfe4ea}
html[data-theme="dark"] .stats-view-tabs button:hover{background:#182231}
html[data-theme="dark"] .stats-view-tabs button.active{background:#e9edf2;color:#0f1520;border-color:#e9edf2}
html[data-theme="dark"] .stats-backfill-button{background:#18311d;border-color:#376c40;color:#77ca81}
html[data-theme="dark"] .stats-backfill-button:hover{background:#1d3a23}
html[data-theme="dark"] .stats-jinho-view-label strong{color:#e9edf2}
html[data-theme="dark"] .stats-backfill-modal{background:#0f1520;color:#e9edf2}
html[data-theme="dark"] .stats-backfill-copy{color:#a0a8b3}
html[data-theme="dark"] .stats-backfill-notice,html[data-theme="dark"] .stats-backfill-progress{background:#131b27;border-color:#263242}
html[data-theme="dark"] .stats-backfill-notice b,html[data-theme="dark"] .stats-backfill-progress span{color:#e9edf2}
html[data-theme="dark"] .stats-backfill-notice span{color:#cfd6df}
html[data-theme="dark"] .stats-backfill-notice small,html[data-theme="dark"] .stats-backfill-progress small{color:#8d98a8}
html[data-theme="dark"] .stats-backfill-progress>i{background:#263242}
@media(max-width:720px){.stats-view-switcher{align-items:stretch;flex-direction:column}
.stats-view-tabs{display:grid;grid-template-columns:1fr 1fr}
.stats-view-tabs button,.stats-backfill-button{width:100%}}
#activityMemberFilters .activity-member-filter-btn small,#activityTypeFilters .activity-type-filter-btn small{display:none!important}
#activityMemberFilters .activity-member-filter-btn{padding-top:9px!important}
#page-stats .stats-view-switcher{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:14px!important;margin:6px 0 18px!important;padding:7px!important;border:1px solid #eadde2!important;border-radius:18px!important;background:rgba(255,255,255,.82)!important;box-shadow:0 8px 24px rgba(75,52,61,.045)!important}
/* 2026-08-24 「진호의 방송 기록」 탭 제거 후 이 줄에는 관리자 버튼만 남습니다.
   일반 방문자에게는 빈 막대만 보이므로 관리자 모드에서만 표시합니다. */
#page-stats .stats-view-switcher{display:none!important}
body.admin-mode #page-stats .stats-view-switcher{display:flex!important}
#page-stats .stats-view-tabs{display:inline-flex!important;align-items:center!important;gap:4px!important;padding:3px!important;border-radius:13px!important;background:#f7f1f3!important}
#page-stats .stats-view-tabs button{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;padding:0 16px!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#8c7780!important;font-family:inherit!important;font-size:13px!important;font-weight:900!important;letter-spacing:-.02em!important;cursor:pointer!important;box-shadow:none!important;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important}
#page-stats .stats-view-tabs button:hover{background:rgba(255,255,255,.72)!important;color:#4c3b42!important}
#page-stats .stats-view-tabs button.active{background:#fff!important;color:#33282d!important;box-shadow:0 3px 12px rgba(62,42,50,.10)!important}
.stats-tab-icon{display:grid;place-items:center;width:19px;height:19px;color:#ad929d}
.stats-tab-icon svg,.stats-backfill-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.stats-view-tabs button.active .stats-tab-icon{color:#e24d78}
#page-stats .stats-backfill-button{appearance:none!important;display:flex!important;align-items:center!important;gap:10px!important;min-height:48px!important;padding:7px 14px 7px 10px!important;border:1px solid #cfe3d2!important;border-radius:13px!important;background:linear-gradient(180deg,#f7fcf7,#eef8ef)!important;color:#286d31!important;font-family:inherit!important;cursor:pointer!important;box-shadow:0 4px 14px rgba(46,125,50,.06)!important;transition:.16s ease!important}
#page-stats .stats-backfill-button:hover{transform:translateY(-1px)!important;border-color:#afd2b4!important;background:#eaf6ec!important;box-shadow:0 7px 18px rgba(46,125,50,.10)!important}
.stats-backfill-icon{display:grid;place-items:center;width:32px;height:32px;padding:7px;border-radius:10px;background:#dff0e1;color:#2e7d32;flex:0 0 auto}
.stats-backfill-button>span:last-child{display:grid;text-align:left;line-height:1.1}
.stats-backfill-button b{font-size:12px;font-weight:1000}
.stats-backfill-button small{margin-top:4px;font-size:12px;font-weight:800;color:#788291}
html[data-theme="dark"] #page-stats .stats-view-switcher{background:#0f1520!important;border-color:#263242!important;box-shadow:none!important}
html[data-theme="dark"] #page-stats .stats-view-tabs{background:#131b27!important}
html[data-theme="dark"] #page-stats .stats-view-tabs button{color:#667284!important}
html[data-theme="dark"] #page-stats .stats-view-tabs button:hover{background:#182231!important;color:#e9edf2!important}
html[data-theme="dark"] #page-stats .stats-view-tabs button.active{background:#263242!important;color:#fff!important;box-shadow:none!important}
html[data-theme="dark"] #page-stats .stats-backfill-button{background:#18311d!important;border-color:#376c40!important;color:#83cf8b!important;box-shadow:none!important}
html[data-theme="dark"] .stats-backfill-icon{background:#244b2b;color:#8ddd94}
html[data-theme="dark"] .stats-backfill-button small{color:#8d98a8}
@media(max-width:720px){#page-stats .stats-view-switcher{align-items:stretch!important;flex-direction:column!important}
#page-stats .stats-view-tabs{display:grid!important;grid-template-columns:1fr 1fr!important}
#page-stats .stats-view-tabs button{padding:0 8px!important}
#page-stats .stats-backfill-button{width:100%!important;justify-content:center!important}
.stats-backfill-button>span:last-child{text-align:left!important}}
.ct-detail-summary{grid-template-columns:minmax(145px,1.2fr) repeat(7,minmax(92px,1fr))!important}
.ct-cal-day.has-broadcast{grid-template-rows:auto 1fr!important}
.ct-cal-day.has-broadcast>i{display:none!important}
#startStatsBackfill[data-action="close"]{background:#2e7d32!important;border-color:#2e7d32!important;color:#fff!important;box-shadow:0 6px 16px rgba(46,125,50,.18)!important}
html[data-theme="dark"] #startStatsBackfill[data-action="close"]{background:#4ea95a!important;border-color:#4ea95a!important;color:#08160a!important}
@media(max-width:1350px){.ct-detail-summary{grid-template-columns:repeat(4,1fr)!important}
.ct-detail-summary .ct-summary-title{grid-column:1/-1!important}}
@media(max-width:820px){.ct-detail-summary{grid-template-columns:repeat(2,1fr)!important}}
/* v2191 · 자동 갱신 + 관리자 수동 보정 */
.ct-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.ct-manual-edit,.ct-day-edit{appearance:none;border:1px solid #d8e8db;background:#f2faf3;color:#2e7d32;border-radius:9px;font:inherit;font-size:12px;font-weight:900;cursor:pointer;transition:.15s ease}
.ct-manual-edit{padding:8px 10px;white-space:nowrap}
.ct-day-edit{position:absolute;right:8px;top:8px;padding:5px 7px;z-index:2}
.ct-manual-edit:hover,.ct-day-edit:hover{background:#e7f5e9;border-color:#b9d9be;transform:translateY(-1px)}
.ct-day-record-wrap{position:relative}
.ct-day-record-wrap .ct-day-record{padding-right:55px}
.stats-manual-modal{width:min(660px,calc(100vw - 28px));padding:25px}
.stats-manual-modal>h2{margin:5px 0 7px;font-size:20px;letter-spacing:-.04em}
.stats-manual-copy{margin:0 0 17px;color:#816f77;font-size:13px;line-height:1.65}
.stats-manual-modal label{display:grid;gap:6px;font-size:12px;font-weight:900;color:#6b5961}
.stats-manual-modal input,.stats-manual-modal select{width:100%;min-height:42px;border:1px solid #e4d8dd;border-radius:10px;background:#fff;color:#362c30;padding:9px 10px;font:inherit;font-size:13px;outline:none}
.stats-manual-modal input:focus,.stats-manual-modal select:focus{border-color:#d76a89;box-shadow:0 0 0 3px rgba(215,106,137,.09)}
.stats-manual-modal input:disabled{background:#f4f0f2;color:#aaa}
.stats-manual-wide{display:grid!important;grid-column:1/-1}
.stats-manual-wide small{font-size:12px;font-weight:700;color:#a28d95}
.stats-manual-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:12px}
.stats-manual-hint{margin:13px 0 0;padding:10px 12px;border:1px solid #e5dadd;border-radius:10px;background:#faf6f7;color:#8c7780;font-size:12px;line-height:1.55}
.stats-manual-reset-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.stats-manual-reset-row .btn{font-size:12px}
.ct-metric-list strong:has(+ .ct-rank){min-width:70px}
html[data-theme="dark"] .ct-manual-edit,html[data-theme="dark"] .ct-day-edit{background:#18311d;border-color:#376c40;color:#86d58f}
html[data-theme="dark"] .ct-manual-edit:hover,html[data-theme="dark"] .ct-day-edit:hover{background:#204127}
html[data-theme="dark"] .stats-manual-modal{background:#0f1520;color:#e9edf2}
html[data-theme="dark"] .stats-manual-copy{color:#667284}
html[data-theme="dark"] .stats-manual-modal label{color:#cfd6df}
html[data-theme="dark"] .stats-manual-modal input,html[data-theme="dark"] .stats-manual-modal select{background:#131b27;border-color:#263242;color:#e9edf2}
html[data-theme="dark"] .stats-manual-modal input:disabled{background:#182231;color:#667284}
html[data-theme="dark"] .stats-manual-hint{background:#131b27;border-color:#263242;color:#8d98a8}
@media(max-width:720px){.stats-manual-grid{grid-template-columns:1fr}
.ct-detail-actions{grid-column:1/-1;justify-content:flex-start}}
/* v2192 · metric reliability / zero-sample repair / collection diagnostics */
/* v2194 · 애청자 월별 성장 그래프 */
.ct-favorite-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-favorite-line{margin-top:14px;border:1px solid var(--ct-line);border-radius:14px;background:linear-gradient(180deg,#fff,#fcf8f9);padding:10px 12px 4px;overflow:hidden}
.ct-favorite-line svg{display:block;width:100%;height:300px;overflow:visible}
.ct-favorite-grid line{stroke:rgba(143,112,123,.16);stroke-width:1;vector-effect:non-scaling-stroke}
.ct-favorite-path{fill:none;stroke:#2e7d32;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 5px rgba(46,125,50,.13))}
.ct-favorite-dot{fill:#fff;stroke:#2e7d32;stroke-width:3;vector-effect:non-scaling-stroke}
.ct-favorite-value{fill:var(--ct-ink);font-size:13px;font-weight:800;paint-order:stroke;stroke:var(--ct-panel);stroke-width:4px;stroke-linejoin:round}
.ct-favorite-month{fill:var(--ct-muted);font-size:12px;font-weight:700}
.ct-favorite-trend-modal header span{color:#2e7d32!important}
html[data-theme="dark"] .ct-favorite-line{background:linear-gradient(180deg,#0f1520,#0f1520)}
html[data-theme="dark"] .ct-favorite-grid line{stroke:rgba(160, 168, 179, .15)}
html[data-theme="dark"] .ct-favorite-path{stroke:#67c995;filter:drop-shadow(0 2px 6px rgba(103,201,149,.18))}
html[data-theme="dark"] .ct-favorite-dot{fill:#0f1520;stroke:#67c995}
html[data-theme="dark"] .ct-favorite-trend-modal header span{color:#79d7a6!important}
@media(max-width:720px){.ct-favorite-summary{grid-template-columns:1fr}
.ct-favorite-line{padding:6px 4px 0}
.ct-favorite-line svg{height:235px}
.ct-favorite-value{font-size:12px}
.ct-favorite-month{font-size:12px}}
/* v21.47: SOOP 신규 게시글 이벤트 */
.activity-card[data-tone="post"] .activity-type-icon{background:#e9f4ff;color:#2472ad}
.activity-filter-type-icon[data-tone="post"]{background:#e9f4ff;color:#2472ad}
/* v2201 · 모바일에서는 다시보기 과거기록 채우기 버튼 숨김 */
@media(max-width:768px){#openStatsBackfill,.stats-backfill-button#openStatsBackfill{display:none!important}}
/* v2205 · 월별 선형 차트 + 과거 게시글 통계 백필 */
.stats-backfill-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.stats-post-backfill-button{border-color:#d9d6ec!important;background:linear-gradient(180deg,#fbfaff,#f4f1fb)!important;color:#67558e!important}
.stats-post-backfill-button .stats-backfill-icon{background:#ebe6f7;color:#6e5a9a}
.stats-post-backfill-button:hover{border-color:#c7bee3!important;background:#f0ebfa!important;box-shadow:0 7px 18px rgba(101,78,145,.10)!important}
.ct-line-trend-modal{width:min(820px,94vw)}
.ct-metric-line .ct-favorite-path{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ct-metric-line .ct-favorite-dot{stroke-width:2}
.ct-metric-line .ct-favorite-value{font-weight:900}
html[data-theme="dark"] .stats-post-backfill-button{background:#241f31!important;border-color:#4c4164!important;color:#c9b8f1!important}
html[data-theme="dark"] .stats-post-backfill-button .stats-backfill-icon{background:#322a45;color:#d2c1f7}
@media(max-width:1100px){.stats-backfill-actions{gap:6px}
.stats-backfill-button{padding-right:10px!important}}
@media(max-width:768px){#openStatsBackfill,#openPostBackfill,.stats-backfill-actions{display:none!important}}
/* v2207 · 최근 활동 고밀도 한줄 리스트 */
.activity-feed .activity-card{
  grid-template-columns:28px 34px minmax(0,1fr) 14px;
  gap:7px;
  min-height:46px;
  padding:6px 10px;
}
.activity-feed .activity-type-icon{
  width:26px;
  height:26px;
  border-radius:8px;
}
.activity-feed .activity-avatar{
  width:32px;
  height:32px;
  border-radius:9px;
}
.activity-feed .activity-card-copy{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
}
.activity-feed .activity-post-category{
  height:17px;
  padding:0 6px;
  font-size:12px;
}
.activity-feed .activity-card h3{
  flex:0 0 auto;
  margin:0;
  font-size:14px;
  line-height:1.25;
  max-width:210px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.activity-feed .activity-card p{
  flex:1 1 auto;
  min-width:0;
  margin:0;
  font-size:12px;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.activity-feed .activity-card small{display:none}
.activity-feed .activity-card.is-unread:before{width:2px}
@media(max-width:768px){.activity-feed .activity-card{
    grid-template-columns:24px 28px minmax(0,1fr) 10px;
    gap:5px;
    min-height:40px;
    padding:5px 6px;
  }
.activity-feed .activity-type-icon{width:23px;height:23px;border-radius:7px}
.activity-feed .activity-avatar{width:27px;height:27px;border-radius:8px}
.activity-feed .activity-card-copy{gap:5px}
.activity-feed .activity-card h3{font-size:12px;max-width:130px}
.activity-feed .activity-card p{font-size:12px}
.activity-feed .activity-post-category{height:15px;padding:0 4px;font-size:12px}}
/* v2208 · 최근 활동 관리자 영구 삭제 */
.activity-feed .activity-card{
  grid-template-columns:28px 34px minmax(0,1fr) auto;
}
.activity-feed .activity-card.is-link{cursor:pointer}
.activity-feed .activity-card.is-link:hover{background:#fff8fa}
.activity-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:16px}
.activity-card-open{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;text-decoration:none;color:#7a626c;font-size:14px;font-weight:900}
.activity-card-open:hover{background:#f7edf0;color:#d84970}
.activity-event-delete{appearance:none;align-items:center;justify-content:center;height:22px;min-width:32px;padding:0 6px;border:1px solid #efcbd3;border-radius:7px;background:#fff4f6;color:#c53e5f;font-size:12px;font-weight:950;line-height:1;cursor:pointer}
.activity-event-delete:hover{background:#ffe7ed;border-color:#e795a8;color:#a91f42}
.activity-feed-toolbar .activity-delete-all{border-color:#efcbd3;background:#fff4f6;color:#c53e5f}
.activity-feed-toolbar .activity-delete-all:hover{background:#ffe7ed;border-color:#e795a8;color:#a91f42}
html[data-theme="dark"] .activity-feed .activity-card.is-link:hover{background:#182231}
html[data-theme="dark"] .activity-card-open{color:#8d98a8}
html[data-theme="dark"] .activity-card-open:hover{background:#182231;color:#ff8eaa}
html[data-theme="dark"] .activity-event-delete{background:#321820;border-color:#62303d;color:#ff91aa}
html[data-theme="dark"] .activity-event-delete:hover{background:#48202b;border-color:#914158;color:#ffc0cf}
html[data-theme="dark"] .activity-feed-toolbar .activity-delete-all{background:#321820;border-color:#62303d;color:#ff91aa}
html[data-theme="dark"] .activity-feed-toolbar .activity-delete-all:hover{background:#48202b;border-color:#914158;color:#ffc0cf}
@media(max-width:768px){.activity-feed .activity-card{grid-template-columns:24px 28px minmax(0,1fr) auto}
.activity-card-actions{gap:2px}
.activity-card-open{width:18px;height:18px;font-size:12px}
.activity-event-delete{height:19px;min-width:27px;padding:0 4px;font-size:12px}
.activity-feed-toolbar .activity-delete-all{padding:7px 8px;font-size:12px}}
/* v2210 · 천타버스형 간결 최근 활동 문구 */
.activity-feed .activity-card-copy{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
}
.activity-member-name{
  flex:0 0 auto;
  font-size:14px;
  line-height:1.2;
  font-weight:950;
  color:#3d3036;
}
.activity-kind{
  flex:0 0 auto;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  color:#907d85;
}
.activity-kind[data-tone="live"]{color:#df345e}
.activity-kind[data-tone="off"]{color:#737b83}
.activity-kind[data-tone="title"]{color:#6974ca}
.activity-kind[data-tone="category"]{color:#2f8a60}
.activity-kind[data-tone="mode"]{color:#ab7418}
.activity-kind[data-tone="post"]{color:#2d79b5}
.activity-feed .activity-card-copy>time{
  flex:0 0 auto;
  font-size:12px;
  color:#6b555e;
}
.activity-new-badge{
  flex:0 0 auto;
  font-style:normal;
  font-size:12px;
  font-weight:1000;
  color:#e24d73;
  background:#ffe8ef;
  border-radius:999px;
  padding:3px 6px;
}
.activity-card-summary{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.25;
  font-weight:650;
  color:#62545a;
}
html[data-theme="dark"] .activity-member-name{color:#f1f3f6}
html[data-theme="dark"] .activity-kind{color:#8d98a8}
html[data-theme="dark"] .activity-kind[data-tone="live"]{color:#ff6e95}
html[data-theme="dark"] .activity-kind[data-tone="off"]{color:#a0a8b3}
html[data-theme="dark"] .activity-kind[data-tone="title"]{color:#9da8ff}
html[data-theme="dark"] .activity-kind[data-tone="category"]{color:#79d5a2}
html[data-theme="dark"] .activity-kind[data-tone="mode"]{color:#efc06f}
html[data-theme="dark"] .activity-kind[data-tone="post"]{color:#8cc9ff}
html[data-theme="dark"] .activity-feed .activity-card-copy>time{color:#788291}
html[data-theme="dark"] .activity-card-summary{color:#a0a8b3}
html[data-theme="dark"] .activity-new-badge{background:#44222c;color:#ff9db6}
@media(max-width:768px){.activity-feed .activity-card-copy{gap:5px}
.activity-member-name{font-size:12px}
.activity-kind{font-size:12px}
.activity-feed .activity-card-copy>time{display:none}
.activity-card-summary{font-size:12px}
.activity-new-badge{font-size:12px;padding:2px 4px}}
/* v2211 · 최근 활동 가독성 재정렬 / 멤버 이름 HEX 색상 */
.activity-feed .activity-card{
  grid-template-columns:34px 40px minmax(0,1fr) auto;
  gap:11px;
  min-height:62px;
  padding:9px 14px;
  align-items:center;
}
.activity-feed .activity-type-icon{width:32px;height:32px;border-radius:8px}
.activity-feed .activity-avatar{width:38px;height:38px;border-radius:9px}
.activity-feed .activity-card-copy{
  display:block;
  min-width:0;
  overflow:hidden;
  white-space:normal;
}
.activity-card-topline{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  white-space:nowrap;
}
.activity-card-bottomline{
  display:flex;
  align-items:center;
  min-width:0;
  margin-top:4px;
}
.activity-member-name{
  flex:0 0 auto;
  font-size:14px;
  line-height:1.2;
  font-weight:950;
  color:var(--activity-member-color,#3d3036);
}
.activity-kind{
  flex:0 0 auto;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
}
.activity-card-topline>time{
  flex:0 0 auto;
  font-size:12px;
  color:#6b555e;
}
.activity-card-summary{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  line-height:1.35;
  font-weight:500;
  color:#75666c;
}
.activity-feed .activity-post-category{height:18px;padding:0 7px;font-size:12px}
.activity-card-actions{align-self:center;gap:5px}
html[data-theme="dark"] .activity-member-name{color:var(--activity-member-color,#f1f3f6)}
html[data-theme="dark"] .activity-card-topline>time{color:#788291}
html[data-theme="dark"] .activity-card-summary{color:#a0a8b3}
@media(max-width:768px){.activity-feed .activity-card{
    grid-template-columns:26px 30px minmax(0,1fr) auto;
    gap:7px;
    min-height:52px;
    padding:7px 8px;
  }
.activity-feed .activity-type-icon{width:25px;height:25px;border-radius:7px}
.activity-feed .activity-avatar{width:29px;height:29px;border-radius:8px}
.activity-card-topline{gap:5px}
.activity-member-name{font-size:13px}
.activity-kind{font-size:12px}
.activity-card-topline>time{font-size:12px}
.activity-card-bottomline{margin-top:3px}
.activity-card-summary{font-size:12px}
.activity-feed .activity-post-category{height:15px;padding:0 4px;font-size:12px}}
/* v2212 · 최근 활동 2줄 정보 계층 / 방송 활동 통합 필터 / 이름 색상 UI */
.activity-feed .activity-card{
  position:relative;
  grid-template-columns:34px 40px minmax(0,1fr);
  gap:11px;
  min-height:66px;
  padding:9px 14px;
}
.activity-feed .activity-card-copy{min-width:0;padding-right:0}
.activity-card-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:0;
}
.activity-card-identity{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  white-space:nowrap;
}
.activity-card-topline>time{
  flex:0 0 auto;
  margin-left:auto;
  padding-left:14px;
  font-size:12px;
  color:#6b555e;
  white-space:nowrap;
}
.activity-card-bottomline{
  display:block;
  min-width:0;
  margin-top:6px;
  padding-right:72px;
}
.activity-card-summary{
  font-size:12px;
  line-height:1.4;
  font-weight:500;
}
.activity-card-actions{
  position:absolute;
  right:10px;
  bottom:8px;
  z-index:2;
}
.activity-member-name{font-size:14px}
.activity-kind{font-size:12px}
.activity-filter-broadcast-icon{overflow:hidden;background:#0b111c!important;padding:0}
.activity-filter-broadcast-icon img{display:block;width:100%;height:100%;object-fit:cover}
#activityTypeFilters{display:grid;grid-template-columns:1fr;gap:7px}
#activityTypeFilters .activity-type-filter-btn{min-height:48px}
#activityTypeFilters .activity-type-filter-btn strong{font-size:12px}
.member-activity-color-control{display:grid;grid-template-columns:44px minmax(120px,1fr) auto;gap:7px;align-items:center;margin-top:6px}
.modal .member-activity-color-control input{margin-top:0}
#memberActivityColorPicker{width:44px;height:40px;padding:3px;cursor:pointer}
.member-admin-row{grid-template-columns:52px minmax(150px,1fr) auto auto auto auto auto!important}
.member-admin-activity-color{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid var(--line);border-radius:9px;background:var(--panel);min-width:88px}
.member-admin-activity-color i{width:16px;height:16px;border-radius:50%;background:var(--member-activity-color);border:1px solid color-mix(in srgb,var(--member-activity-color) 75%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--member-activity-color) 18%,transparent)}
.member-admin-activity-color code{font-size:12px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
html[data-theme="dark"] .member-admin-activity-color{background:#0f1520;border-color:#263242}
@media(max-width:768px){.activity-feed .activity-card{grid-template-columns:26px 30px minmax(0,1fr);gap:7px;min-height:58px;padding:7px 8px}
.activity-card-topline{gap:7px}
.activity-card-identity{gap:5px;overflow:hidden}
.activity-card-topline>time{display:block!important;font-size:12px;padding-left:6px}
.activity-card-bottomline{margin-top:4px;padding-right:56px}
.activity-card-summary{font-size:12px}
.activity-card-actions{right:6px;bottom:6px}
.member-admin-row{grid-template-columns:44px minmax(0,1fr)!important}
.member-admin-row>.member-admin-activity-color,.member-admin-row>.btn{grid-column:2}
.member-activity-color-control{grid-template-columns:42px minmax(0,1fr) auto}}
/* v2220 · 새 카테고리 관리자 영구 매핑 */
.activity-card-bottomline{display:flex;align-items:center;gap:8px;min-width:0}
.activity-card-summary{min-width:0}
.activity-category-map{flex:0 0 auto;border:1px solid rgba(47,125,50,.28);background:rgba(47,125,50,.08);color:inherit;border-radius:999px;padding:3px 8px;font:inherit;font-size:12px;font-weight:700;line-height:1.2;cursor:pointer;white-space:nowrap}
.activity-category-map:hover{background:rgba(47,125,50,.16)}
html[data-theme="dark"] .activity-category-map,body.dark .activity-category-map{border-color:rgba(126,229,161,.3);background:rgba(126,229,161,.08)}
@media (max-width:760px){.activity-card-bottomline{align-items:flex-start;flex-wrap:wrap}
.activity-category-map{font-size:12px}}
/* v2241: 가독성 보정 — 글자 크기를 키운 뒤 줄 간격과 최대 너비를 함께 조정합니다. */
.ct-stats-shell{line-height:1.35}
.ct-stats-shell small,.ct-stats-shell span,.ct-stats-shell em{line-height:1.3}
/* 초광폭 화면에서 카드가 지나치게 좁아지지 않도록 한 줄에 들어가는 개수를 제한합니다.
   모바일/태블릿 레이아웃은 건드리지 않도록 min-width 조건에서만 적용합니다. */
@media (min-width:900px){/* v2241c: 가운데 정렬하면 섹션 제목·월 탭과 왼쪽 끝이 어긋나므로 왼쪽 정렬을 유지합니다. */
.ct-member-grid{max-width:1720px;margin-inline:0;gap:10px}
.ct-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-member-card{padding:11px}}
@media (min-width:1360px){.ct-member-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* FHD에서 스크롤을 줄이기 위해 한 줄에 5개까지 배치합니다. */
@media (min-width:1620px){.ct-member-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* 활동 목록도 한 줄 길이가 너무 길어지지 않게 합니다. */
@media (min-width:900px){.activity-feed{max-width:1240px}}
/* v2241b: 참고 디자인의 정보 위계를 반영합니다.
   라벨은 작고 흐리게, 값은 크고 선명하게 두어 눈이 값을 먼저 잡도록 합니다. */
.ct-summary-row strong,.ct-summary-row b{font-variant-numeric:tabular-nums;letter-spacing:-.015em}
.ct-member-card{border-radius:14px}
.ct-metric-list button{padding:5px 2px}
/* 순위 배지가 값과 경쟁하지 않도록 살짝 뒤로 물립니다. */
.ct-rank{opacity:.85;transform:scale(.95)}
.ct-day-record em,.ct-day-record b{font-variant-numeric:tabular-nums}
/* v2246: FHD 기준 스크롤 길이 축소. 세로 여백을 줄이는 데 집중합니다. */
.ct-metric-list button{min-height:0}
.ct-member-card header{margin-bottom:4px}
@media (min-width:900px){/* 페이지 상단 여백과 섹션 간격을 줄여 첫 화면에 카드가 더 들어오게 합니다. */
.ct-stats-shell{padding-top:6px}
.ct-stats-shell section{margin-bottom:12px}}
/* v24.31 stats accuracy: date-range VOD backfill */
.stats-backfill-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;margin:18px 0 4px;padding:14px;border:1px solid #e7dce0;border-radius:13px;background:#fff}
.stats-backfill-range label{display:grid;gap:7px}
.stats-backfill-range label>span{font-size:11px;font-weight:900;letter-spacing:.04em;color:#806d75}
.stats-backfill-range input{width:100%;min-height:42px;padding:0 11px;border:1px solid #ded2d7;border-radius:10px;background:#faf7f8;color:#44363c;font:inherit;font-size:13px;font-weight:800;color-scheme:light}
.stats-backfill-range>i{align-self:center;margin-top:19px;color:#aa98a0;font-style:normal;font-weight:900}
.stats-backfill-range input:focus{outline:none;border-color:#5da966;box-shadow:0 0 0 3px rgba(46,125,50,.09)}
html[data-theme="dark"] .stats-backfill-range{background:#131b27;border-color:#263242}
html[data-theme="dark"] .stats-backfill-range label>span{color:#a0a8b3}
html[data-theme="dark"] .stats-backfill-range input{background:#0f1520;border-color:#263242;color:#e9edf2;color-scheme:dark}
html[data-theme="dark"] .stats-backfill-range>i{color:#667284}
@media(max-width:560px){.stats-backfill-range{grid-template-columns:1fr}
.stats-backfill-range>i{display:none}}
/* v2242 · 방송 기록 정상화 되돌리기 */
.stats-repair-restore{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin:0 0 14px;padding:12px 14px;
  border:1px solid #e7dce0;border-radius:13px;background:#fbf8f3;
}
.stats-repair-restore small{flex:1 1 260px;font-size:12px;line-height:1.55;color:#8a7580}
.stats-repair-restore button[hidden]{display:none}
html[data-theme="dark"] .stats-repair-restore{background:#221f18;border-color:#3a352a}
html[data-theme="dark"] .stats-repair-restore small{color:#a89c8a}

/* ===== monthly-history.css ===== */
.monthly-history-trigger{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.monthly-history-trigger .mh-trigger-icon{font-size:14px;line-height:1}
.mobile-history-trigger{flex:1}
.monthly-history-layer{position:fixed;inset:0;z-index:1700;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(9, 13, 20, .28);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
.monthly-history-layer.is-open{opacity:1;visibility:visible}
.monthly-history-panel{width:min(560px,calc(100vw - 32px));max-height:min(82vh,820px);display:flex;flex-direction:column;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:24px;background:color-mix(in srgb,var(--panel) 96%,#fff 4%);box-shadow:0 28px 80px rgba(25,24,22,.22);transform:translateY(12px) scale(.985);transition:transform .2s ease;color:var(--text)}
.monthly-history-layer.is-open .monthly-history-panel{transform:translateY(0) scale(1)}
.monthly-history-head{display:grid;grid-template-columns:42px 1fr 42px 42px;gap:8px;align-items:center;padding:18px 18px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,var(--accent) 6%)}
.monthly-history-head h2{margin:0;text-align:center;font-size:18px;letter-spacing:-.02em;color:var(--text)}
.monthly-history-head button{width:42px;height:42px;border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--text);font:inherit;font-size:18px;cursor:pointer;transition:.15s ease}
.monthly-history-head button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 50%,var(--line));background:color-mix(in srgb,var(--panel2) 88%,var(--primary) 12%)}
.monthly-history-scroll{overflow:auto;padding:14px 18px 20px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 45%,transparent) transparent}
.monthly-history-scroll::-webkit-scrollbar{width:8px}
.monthly-history-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 42%,transparent);border-radius:999px}
.mh-section{margin:0 0 12px;padding:14px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel2) 70%,var(--panel) 30%)}
.mh-section:last-child{margin-bottom:0}
.mh-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.mh-section-title span{font-size:14px;color:var(--muted)}
.mh-section-title strong{font-size:15px;color:var(--text)}
.mh-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mh-summary-card{min-height:64px;padding:11px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:13px;background:color-mix(in srgb,var(--panel) 82%,var(--accent) 18%)}
.mh-summary-card strong{display:block;font-size:17px;line-height:1.15;color:var(--text)}
.mh-summary-card span{display:block;margin-top:5px;font-size:13px;line-height:1.3;color:var(--muted)}
.mh-next-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px dashed var(--line);font-size:14px;color:var(--muted)}
.mh-next-line b{max-width:66%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}
.mh-broadcast-card{border-color:color-mix(in srgb,var(--accent) 62%,var(--line));background:color-mix(in srgb,var(--panel) 88%,var(--accent) 12%)}
.mh-broadcast-total{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.mh-broadcast-total strong{font-size:18px;color:var(--text)}
.mh-change{font-size:14px;font-weight:800}
.mh-change.up{color:#4f8ec9}
.mh-change.down{color:#d46a72}
.mh-change.same{color:var(--muted)}
.mh-daily-chart{height:88px;display:grid;grid-template-columns:repeat(31,minmax(2px,1fr));gap:3px;align-items:end;margin:14px 0 8px;padding:0 1px 18px;border-bottom:1px dashed var(--line);position:relative}
.mh-daily-bar{min-height:2px;border-radius:3px 3px 1px 1px;background:color-mix(in srgb,var(--primary) 82%,#6e64c7 18%);opacity:.88}
.mh-daily-bar.zero{height:2px!important;opacity:.12}
.mh-day-axis{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(7,1fr);font-size:12px;color:var(--muted)}
.mh-day-axis span{text-align:left}
.mh-day-axis span:last-child{text-align:right}
.mh-broadcast-note{font-size:13px;color:var(--muted)}
.mh-broadcast-note b{color:color-mix(in srgb,var(--primary) 75%,var(--text))}
.mh-stack-chart{height:126px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;align-items:end;margin-top:8px}
.mh-stack-col{height:100%;display:grid;grid-template-rows:1fr 18px;gap:5px;min-width:0}
.mh-stack{align-self:end;height:100%;display:flex;flex-direction:column-reverse;justify-content:flex-start;border-radius:6px 6px 2px 2px;overflow:hidden;background:color-mix(in srgb,var(--line) 26%,transparent)}
.mh-stack-seg{display:block;min-height:2px;background:var(--seg);opacity:.86;border-top:1px solid rgba(255,255,255,.32)}
.mh-stack-label{text-align:center;font-size:12px;color:var(--muted)}
.mh-legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mh-legend-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 78%,transparent)}
.mh-legend-chip i{width:7px;height:7px;border-radius:50%;background:var(--dot);flex:none}
.mh-top-list{display:grid;gap:7px}
.mh-top-row{width:100%;display:grid;grid-template-columns:26px 1fr auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 82%,transparent);color:inherit;text-align:left;cursor:pointer}
.mh-top-row:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--line));background:color-mix(in srgb,var(--panel) 88%,var(--primary) 12%)}
.mh-top-rank{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--text) 92%,transparent);color:var(--panel);font-size:13px;font-weight:900}
.mh-top-copy{min-width:0}
.mh-top-copy b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.mh-top-copy small{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.mh-top-heart{font-size:14px;font-weight:800;color:#dd6b8b}
.mh-empty{padding:16px;text-align:center;font-size:14px;color:var(--muted);border:1px dashed var(--line);border-radius:12px}
html[data-theme="dark"] .monthly-history-layer{background:rgba(0,0,0,.44)}
html[data-theme="dark"] .monthly-history-panel{background:#131b27;border-color:#334154;box-shadow:0 32px 90px rgba(0,0,0,.5)}
html[data-theme="dark"] .monthly-history-head{background:#182231}
html[data-theme="dark"] .mh-section{background:#182231;border-color:#334154}
html[data-theme="dark"] .mh-summary-card{background:#182231}
html[data-theme="dark"] .mh-broadcast-card{background:#182231;border-color:#7f7140}
html[data-theme="dark"] .mh-top-row{background:#131b27}
@media(max-width:760px){.monthly-history-layer{align-items:flex-end;padding:0;background:rgba(9, 13, 20, .36)}
.monthly-history-panel{width:100%;max-height:88dvh;border-radius:22px 22px 0 0;border-left:0;border-right:0;border-bottom:0;transform:translateY(28px)}
.monthly-history-head{grid-template-columns:40px 1fr 40px 40px;padding:12px}
.monthly-history-head button{width:40px;height:40px;border-radius:13px}
.monthly-history-scroll{padding:12px 12px calc(18px + env(safe-area-inset-bottom))}
.mh-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mh-stack-chart{gap:5px}}

/* ===== v8-dashboard.css ===== */
:root{
  --v8-glow:0 18px 55px rgba(67,38,130,.14);
  --v8-border:rgba(139,122,190,.18);
}
.app-page.active > *{
  animation:v8PageIn .42s cubic-bezier(.22,.75,.28,1) both;
}
.app-page.active > *:nth-child(2){animation-delay:.035s}
.app-page.active > *:nth-child(3){animation-delay:.07s}
.app-page.active > *:nth-child(4){animation-delay:.105s}
@keyframes v8PageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.activity-item{
  border:1px solid transparent;
  border-radius:18px;
  margin:8px 0;
  padding:18px 14px;
  transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease;
}
.activity-item:hover{
  transform:translateY(-2px);
  border-color:var(--v8-border);
  background:rgba(255,255,255,.035);
  box-shadow:0 14px 34px rgba(20,14,38,.1);
}
.activity-item.is-new-event{animation:v8NewEvent .68s cubic-bezier(.2,.85,.28,1) both}
.activity-item.is-new-event:after{
  content:"NEW";
  position:absolute;
  top:10px;
  right:12px;
  padding:4px 7px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  color:#fff;
  background:linear-gradient(135deg,#ff5b75,#8b5cf6);
  box-shadow:0 7px 18px rgba(139,92,246,.24);
  animation:v8NewBadge 4s ease both;
}
@keyframes v8NewEvent{0%{opacity:0;transform:translateY(-14px) scale(.985);background:rgba(139,92,246,.14)}100%{opacity:1;transform:none;background:transparent}}
@keyframes v8NewBadge{0%,72%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-4px)}}
.activity-copy{min-width:0}
.live-hub-header{align-items:center}
.live-overview article{
  position:relative;
  overflow:hidden;
  border:1px solid var(--v8-border);
  box-shadow:0 12px 32px rgba(24,15,48,.08);
}
.live-overview article:after{
  content:"";
  position:absolute;
  width:100px;height:100px;
  right:-42px;top:-50px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(135,87,255,.15),transparent 70%);
}
.live-overview-dot{box-shadow:0 0 0 6px rgba(255,72,96,.1),0 0 18px rgba(255,72,96,.55);animation:v8LivePulse 1.8s ease-in-out infinite}
@keyframes v8LivePulse{50%{transform:scale(.82);opacity:.72}}
.live-card-grid{align-items:stretch}
.live-stream-card{
  position:relative;
  overflow:hidden;
  border:1px solid var(--v8-border);
  box-shadow:0 13px 34px rgba(25,17,44,.09);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.live-stream-card:hover{transform:translateY(-5px);box-shadow:0 22px 48px rgba(24,15,45,.17)}
.live-stream-card.is-live{border-color:rgba(255,70,95,.45);box-shadow:0 18px 44px rgba(255,70,95,.13)}
.live-stream-card.is-live:before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(125deg,rgba(255,75,96,.06),transparent 40%);
}
.live-card-thumb{overflow:hidden}
.live-card-thumb img{transition:transform .45s cubic-bezier(.2,.7,.25,1),filter .25s ease}
.live-stream-card:hover .live-card-thumb img{transform:scale(1.045)}
.live-stream-card.is-offline .live-card-thumb img{filter:saturate(.72) brightness(.86)}
.live-badge,.offline-badge{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.live-card-body{position:relative;z-index:3}
.live-card-body strong{font-size:17px;letter-spacing:-.02em}
.live-card-body p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}
.live-card-body .v8-status-row{display:flex;align-items:center;gap:6px;margin-top:9px;flex-wrap:wrap}
.v8-mini-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:rgba(135,87,255,.09);font-size:12px;font-weight:800;color:var(--muted,#8d95a5)}
.is-live .v8-mini-chip{background:rgba(255,75,96,.1);color:#ff6b7e}
.v8-skeleton{position:relative;overflow:hidden;background:rgba(138,148,170,.1)!important;color:transparent!important;border-color:transparent!important}
.v8-skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);animation:v8Shimmer 1.25s infinite}
@keyframes v8Shimmer{to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.app-page.active > *,.activity-item.is-new-event,.live-overview-dot,.v8-skeleton:after{animation:none!important}
.activity-item,.live-stream-card,.live-card-thumb img{transition:none!important}}
@media (max-width:760px){.activity-item{grid-template-columns:42px minmax(0,1fr);padding:15px 9px;margin:6px 0;border-radius:15px}
.activity-item:hover{transform:none}
.activity-item.is-new-event:after{top:8px;right:8px}
.live-hub-header{align-items:flex-start;gap:14px}
.live-refresh-btn{min-height:44px}
.live-overview{grid-template-columns:1fr}
.live-overview article{min-height:78px}
.live-card-grid{grid-template-columns:1fr}
.live-stream-card{display:grid;grid-template-columns:132px minmax(0,1fr)}
.live-card-thumb{height:100%;min-height:128px}
.live-card-body{padding:14px 13px}}
@media (max-width:430px){.live-stream-card{grid-template-columns:112px minmax(0,1fr)}
.live-card-body .live-avatar{display:none}
.live-card-body strong{font-size:16px}}

/* ===== v9-performance-ui.css ===== */
:root{
  --v9-surface:rgba(255,255,255,.035);
  --v9-surface-strong:rgba(255,255,255,.065);
  --v9-line:rgba(255,255,255,.085);
  --v9-focus:rgba(159,119,255,.72);
  --v9-shadow:0 18px 46px rgba(5,3,12,.16);
  --v9-ease:cubic-bezier(.2,.72,.24,1);
}
.app-page:not(.active){
  display:none;
}
.app-page.active{
  display:block;
  content-visibility:visible;
  contain-intrinsic-size:auto;
}
.activity-item,.live-stream-card,.panel{contain:layout paint style}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:rgba(143,92,255,.34);color:#fff}
:where(button,a,input,textarea,select,[tabindex]):focus-visible{
  outline:2px solid var(--v9-focus);
  outline-offset:3px;
  box-shadow:0 0 0 5px rgba(143,92,255,.12);
}
:where(button,a){-webkit-tap-highlight-color:transparent}
*{scrollbar-width:thin;scrollbar-color:rgba(145,122,205,.38) transparent}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:rgba(145,122,205,.32);border:2px solid transparent;border-radius:999px;background-clip:padding-box}
*::-webkit-scrollbar-thumb:hover{background:rgba(145,122,205,.5);background-clip:padding-box}
.topbar,.app-sidebar,.panel,.live-stream-card{
  border-color:var(--v9-line);
}
.panel{
  box-shadow:var(--v9-shadow);
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s var(--v9-ease);
}
.panel:hover{border-color:rgba(154,125,230,.19)}
.sidebar-tab{position:relative;isolation:isolate;overflow:hidden}
.sidebar-tab:before{
  content:"";position:absolute;inset:5px;border-radius:12px;z-index:-1;
  opacity:0;transform:scale(.96);background:linear-gradient(110deg,rgba(139,92,246,.12),rgba(255,92,126,.055));
  transition:opacity .2s ease,transform .2s var(--v9-ease);
}
.sidebar-tab:hover:before,.sidebar-tab.active:before{opacity:1;transform:scale(1)}
.sidebar-tab.active .sidebar-icon{filter:drop-shadow(0 5px 12px rgba(139,92,246,.28))}
.btn,.live-refresh-btn,.activity-filter,.sidebar-tab{
  transform:translateZ(0);
  transition:transform .16s var(--v9-ease),border-color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.btn:active,.live-refresh-btn:active,.activity-filter:active{transform:scale(.975)}
.btn.primary{position:relative;overflow:hidden}
.btn.primary:after{
  content:"";position:absolute;top:-80%;left:-45%;width:35%;height:260%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:rotate(18deg) translateX(-240%);
  transition:transform .65s var(--v9-ease);
}
.btn.primary:hover:after{transform:rotate(18deg) translateX(520%)}
.activity-item,.live-stream-card{isolation:isolate}
.activity-item:before,.live-stream-card:after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;
  background:radial-gradient(420px circle at var(--v9-x,50%) var(--v9-y,0%),rgba(150,105,255,.11),transparent 45%);
  transition:opacity .24s ease;
}
.activity-item:hover:before,.live-stream-card:hover:after{opacity:1}
.activity-item:hover{will-change:transform}
.live-stream-card:hover{will-change:transform}
img{max-width:100%;height:auto}
.live-card-thumb img,.detail-image-wrap img{content-visibility:auto}
img[data-v9-loaded="false"]{opacity:.001}
img[data-v9-loaded="true"]{opacity:1;transition:opacity .28s ease}
:where(input,textarea,select){transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
:where(input,textarea,select):focus{border-color:rgba(149,105,255,.58);box-shadow:0 0 0 4px rgba(139,92,246,.095)}
.toast{box-shadow:0 18px 55px rgba(0,0,0,.28);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.live-dot{will-change:transform,opacity}
.v9-network-status{
  position:fixed;right:16px;bottom:16px;z-index:9999;display:flex;align-items:center;gap:8px;
  padding:9px 12px;border:1px solid rgba(255,255,255,.11);border-radius:999px;
  background:rgba(18,14,27,.88);box-shadow:0 14px 35px rgba(0,0,0,.24);color:#fff;
  font-size:13px;font-weight:800;opacity:0;transform:translateY(10px);pointer-events:none;
  transition:opacity .22s ease,transform .22s var(--v9-ease);
}
.v9-network-status.is-visible{opacity:1;transform:none}
.v9-network-status i{width:7px;height:7px;border-radius:50%;background:#ff6177;box-shadow:0 0 0 4px rgba(255,97,119,.14)}
.v9-network-status.is-online i{background:#58d89f;box-shadow:0 0 0 4px rgba(88,216,159,.14)}
html:not(.v9-ready) .app-page.active > *{
  animation:none!important;
}
html.v9-ready .app-page.active > *{
  animation-play-state:running;
}
@media (max-width:760px){:root{--v9-shadow:0 10px 28px rgba(5,3,12,.12)}
html{scroll-behavior:auto}
.app-page.active{
  contain-intrinsic-size:auto;
}
.panel:hover{transform:none}
.activity-item:before,.live-stream-card:after,.btn.primary:after{display:none}
.topbar,.app-sidebar,.toast{backdrop-filter:none;-webkit-backdrop-filter:none}
.v9-network-status{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));max-width:calc(100vw - 20px)}
*::-webkit-scrollbar{width:5px;height:5px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}
*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.feed-toolbar{
  display:grid;
  gap:16px;
}
#page-feed .feed-toolbar{
  display:grid!important;
  grid-template-rows:auto auto auto!important;
  align-items:stretch!important;
  gap:14px!important;
  min-height:340px;
}
@media(max-width:900px){#page-feed .feed-toolbar{min-height:360px}}
@media(max-width:560px){#page-feed .feed-toolbar{min-height:400px}}
#page-feed .feed-toolbar{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:52px 52px 116px 74px!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  gap:14px!important;
  min-height:0!important;
}
#page-feed .feed-toolbar > *{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  justify-self:stretch!important;
  box-sizing:border-box!important;
  margin:0!important;
}
@media(max-width:900px){#page-feed .feed-toolbar{
    grid-template-rows:78px 52px 116px 96px!important;
  }}
#page-feed .feed-toolbar{
  --feed-head-h:64px;
  --feed-group-h:54px;
  --feed-members-h:136px;
  --feed-type-h:68px;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:var(--feed-head-h) var(--feed-group-h) var(--feed-members-h) var(--feed-type-h)!important;
  gap:12px!important;
  padding:18px!important;
  min-height:0!important;
  overflow:hidden!important;
}
@media(max-width:900px){#page-feed .feed-toolbar{
    --feed-head-h:92px;
    --feed-group-h:112px;
    --feed-members-h:136px;
    --feed-type-h:82px;
  }}
@media(max-width:560px){#page-feed .feed-toolbar{
    --feed-head-h:104px;
    padding:14px!important;
  }}
html[data-theme="dark"]{
  --dark-text:#f6f7f9;
  --dark-body:#dfe4ea;
  --dark-muted:#a0a8b3;
  --dark-faint:#788291;
  --dark-panel:#111619;
  --dark-panel-2:#131b27;
  --dark-border:#263242;
}
html[data-theme="dark"] #vodDurationRanking,html[data-theme="dark"] #vodDurationRanking *{
  color:var(--dark-body)!important;
}
html[data-theme="dark"] #vodDurationRanking .rank-item{
  background:transparent!important;
  border-color:var(--dark-border)!important;
}
html[data-theme="dark"] #vodDurationRanking .rank-item b,html[data-theme="dark"] #vodDurationRanking .rank-item strong{
  color:var(--dark-text)!important;
}
html[data-theme="dark"] #vodDurationRanking .rank-item small{
  color:var(--dark-muted)!important;
  opacity:1!important;
}
html[data-theme="dark"] #vodDurationRanking .rank-item em{
  color:#a9dc93!important;
}
html[data-theme="dark"] .admin-empty{
  color:var(--dark-muted)!important;
  opacity:1!important;
}
html[data-theme="dark"] .rank-item,html[data-theme="dark"] .rank-item span,html[data-theme="dark"] .rank-item b,html[data-theme="dark"] .rank-item strong,html[data-theme="dark"] .rank-item small{
  text-shadow:none!important;
}

/* ===== v23-global-ui.css ===== */
/* ============================================================
   JINHO ARCHIVE v23 · GLOBAL UI RENEWAL / PHASE 1
   Global top navigation + editorial home + shared page language
   ============================================================ */
:root{
  --v23-accent:#ea3f69;
  --v23-accent-soft:rgba(234,63,105,.09);
  --v23-bg:#f7f6f7;
  --v23-surface:#ffffff;
  --v23-surface-2:#f2f1f2;
  --v23-line:#e7e3e6;
  --v23-text:#171619;
  --v23-muted:#7b777d;
  --v23-soft-text:#9b969d;
  --v23-shadow:0 18px 48px rgba(33,24,29,.06);
  --bg:#f7f6f7;
  --bg2:#f2f1f2;
  --panel:#ffffff;
  --panel2:#f3f1f2;
  --line:#e7e3e6;
  --text:#171619;
  --muted:#7b777d;
  --primary:#ea3f69;
  --accent:#ea3f69;
  --shadow:0 16px 42px rgba(33,24,29,.055);
}
html[data-theme="dark"]{
  --v23-accent:#ff547d;
  --v23-accent-soft:rgba(255,84,125,.10);
  --v23-bg:#0b0c0f;
  --v23-surface:#121318;
  --v23-surface-2:#17191f;
  --v23-line:#292b32;
  --v23-text:#f5f3f5;
  --v23-muted:#9d99a2;
  --v23-soft-text:#74727a;
  --v23-shadow:0 22px 56px rgba(0,0,0,.26);
  --bg:#0b0c0f;
  --bg2:#0e0f13;
  --panel:#121318;
  --panel2:#17191f;
  --line:#292b32;
  --text:#f5f3f5;
  --muted:#9d99a2;
  --primary:#ff547d;
  --accent:#ff547d;
  --shadow:0 18px 50px rgba(0,0,0,.24);
}
html,body{background:var(--v23-bg)!important;color:var(--v23-text)}
body.v23-ui{padding-left:0!important;background:var(--v23-bg)!important}
body.v23-ui .panel{box-shadow:none;border-color:var(--v23-line)}
/* ---------- Global header ---------- */
.v23-global-header{
  position:sticky!important;top:0!important;left:0!important;right:auto!important;z-index:90!important;
  width:100%!important;max-width:none!important;height:76px!important;margin:0!important;padding:0 clamp(24px,3.1vw,64px)!important;
  display:flex!important;align-items:center!important;gap:24px!important;
  border-bottom:1px solid color-mix(in srgb,var(--v23-line) 88%,transparent)!important;
  background:color-mix(in srgb,var(--v23-bg) 90%,transparent)!important;
  backdrop-filter:blur(20px) saturate(1.25)!important;
  box-shadow:none!important;
}
.v23-global-brand{
  flex:0 0 168px;display:flex;align-items:center;height:44px;text-decoration:none;overflow:hidden;
}
.v23-global-brand img{display:block;width:164px;height:40px;object-fit:contain;object-position:left center}
.v23-global-brand .v23-logo-dark{display:none}
html[data-theme="dark"] .v23-global-brand .v23-logo-light{display:none}
html[data-theme="dark"] .v23-global-brand .v23-logo-dark{display:block}
.v23-global-nav{
  flex:1 1 auto;min-width:0;height:100%;display:flex;align-items:stretch;justify-content:center;gap:2px;
  overflow-x:auto;overflow-y:hidden;scrollbar-width:none;
}
.v23-global-nav::-webkit-scrollbar{display:none}
.v23-global-nav .v23-nav-tab.sidebar-tab{
  position:relative;flex:0 0 auto;width:auto!important;min-width:auto!important;min-height:0!important;height:100%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  margin:0!important;padding:0 13px!important;border:0!important;border-radius:0!important;background:transparent!important;
  color:var(--v23-muted)!important;box-shadow:none!important;transform:none!important;font-size:13px!important;font-weight:720!important;
  letter-spacing:-.01em;cursor:pointer;transition:color .16s ease!important;
}
.v23-global-nav .v23-nav-tab.sidebar-tab::after{
  content:"";position:absolute;left:50%;right:50%;bottom:-1px;height:2px;background:var(--v23-accent);
  transition:left .18s ease,right .18s ease;
}
.v23-global-nav .v23-nav-tab.sidebar-tab:hover{color:var(--v23-text)!important;background:transparent!important}
.v23-global-nav .v23-nav-tab.sidebar-tab.active{color:var(--v23-text)!important;background:transparent!important;border:0!important;box-shadow:none!important}
.v23-global-nav .v23-nav-tab.sidebar-tab.active::after{left:12px;right:12px}
.v23-global-nav .v23-live-nav i{width:6px;height:6px;border-radius:50%;background:#a5a1a7;box-shadow:none}
body.is-live .v23-global-nav .v23-live-nav i{background:#ff315e;box-shadow:0 0 0 4px rgba(255,49,94,.11)}
body:not(.up-rank-enabled) .v23-up-rank-nav{display:none!important}
.v23-global-header .page-heading{display:none!important}
.v23-global-header .top-actions{flex:0 0 auto;display:flex!important;align-items:center!important;gap:8px!important;margin:0!important}
.v23-global-header .top-live-cluster{display:flex;align-items:center;gap:7px}
.v23-global-header .cloud-status{
  max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  border:0!important;background:transparent!important;color:var(--v23-soft-text)!important;padding:0 3px!important;font-size:10px!important;font-weight:650!important;
}
.v23-global-header #themeToggle{
  min-width:38px!important;height:38px!important;padding:0 11px!important;border:1px solid var(--v23-line)!important;border-radius:999px!important;
  background:var(--v23-surface)!important;color:var(--v23-text)!important;box-shadow:none!important;font-size:11px!important;font-weight:750!important;
}
.v23-soop-pill{
  height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--v23-line);border-radius:999px;
  background:var(--v23-surface);color:var(--v23-muted);text-decoration:none;font-size:10px;font-weight:850;letter-spacing:.08em;
}
.v23-soop-pill i{width:6px;height:6px;border-radius:50%;background:#a5a1a7}
.v23-soop-pill .on{display:none;color:#ff315e}
body.is-live .v23-soop-pill{border-color:rgba(255,49,94,.28);background:rgba(255,49,94,.07)}
body.is-live .v23-soop-pill i{background:#ff315e;box-shadow:0 0 0 4px rgba(255,49,94,.11)}
body.is-live .v23-soop-pill .off{display:none}
body.is-live .v23-soop-pill .on{display:inline}
/* Keep floating live toast below the new global header. */
.v23-ui .live-toast{top:88px!important;right:24px!important}
/* ---------- Desktop shell ---------- */
.v23-ui .app-shell{
  width:min(1540px,calc(100% - 64px))!important;max-width:1540px!important;margin:0 auto!important;
  padding:34px 0 76px!important;background:transparent!important;
}
.v23-ui .app-page{width:100%;max-width:none;margin:0 auto}
.v23-ui .app-page.active{animation:v23PageIn .24s ease both}
@keyframes v23PageIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
/* ---------- Shared editorial page title language ---------- */
.v23-page-intro{
  display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:0 0 30px;padding:10px 2px 25px;
  border-bottom:1px solid var(--v23-line);
}
.v23-page-intro>span,.v23-ui .live-hub-header::before,.v23-ui .poster-archive-header::before,.v23-ui .vod-page-head::before,.v23-ui .up-rank-head::before,.v23-ui .schedule-page-head::before{
  color:var(--v23-accent);font-size:10px;font-weight:850;letter-spacing:.19em;line-height:1.2;
}
.v23-page-intro h1{margin:7px 0 8px;font-size:clamp(34px,3.15vw,52px);line-height:1;letter-spacing:-.055em;font-weight:820}
.v23-page-intro p{max-width:720px;margin:0;color:var(--v23-muted);font-size:13px;line-height:1.65}
.v23-ui .live-hub-header,.v23-ui .poster-archive-header,.v23-ui .vod-page-head,.v23-ui .up-rank-head,.v23-ui .schedule-page-head{
  position:relative!important;margin:0 0 28px!important;padding:31px 2px 24px!important;border:0!important;border-bottom:1px solid var(--v23-line)!important;
  background:transparent!important;box-shadow:none!important;border-radius:0!important;
}
.v23-ui .live-hub-header::before{content:"05 / LIVE";position:absolute;top:7px;left:2px}

.v23-ui .up-rank-head::before{content:"08 / UP RANK";position:absolute;top:7px;left:2px}
.v23-ui .poster-archive-header::before{content:"09 / POSTER";position:absolute;top:7px;left:2px}
.v23-ui .schedule-page-head::before{content:"02 / SCHEDULE";position:absolute;top:7px;left:2px}
.v23-ui .live-hub-header h2,.v23-ui .poster-archive-header h2,.v23-ui .vod-page-head h1,.v23-ui .up-rank-head h1,.v23-ui .schedule-page-head h1{
  margin:3px 0 8px!important;color:var(--v23-text)!important;font-size:clamp(34px,3.15vw,52px)!important;line-height:1!important;
  letter-spacing:-.055em!important;font-weight:820!important;
}
.v23-ui .live-hub-header p,.v23-ui .poster-archive-header p,.v23-ui .vod-page-head p,.v23-ui .up-rank-head p,.v23-ui .schedule-page-head p{color:var(--v23-muted)!important;font-size:13px!important;line-height:1.65!important}
.v23-ui .up-rank-head .eyebrow{display:none!important}
/* ---------- Calendar / Activity / Stats first-pass shell cleanup ---------- */
#page-calendar .portal-hero,#page-calendar .spotlight-row,#page-calendar .dashboard-strip{display:none!important}
#page-calendar .schedule-layout{margin-top:0!important}
#page-calendar .calendar-card{box-shadow:none!important;border-color:var(--v23-line)!important;background:var(--v23-surface)!important}
#page-calendar .calendar-head{padding-bottom:12px!important;border-bottom:1px solid var(--v23-line)!important}
#page-calendar .calendar-kicker{color:var(--v23-accent)!important}
#page-activity .activity-layout{gap:18px!important}
#page-activity .activity-feed-panel,#page-activity .activity-filter-panel{box-shadow:none!important;border-color:var(--v23-line)!important;background:var(--v23-surface)!important}
#page-activity .activity-status-row{margin-top:-18px!important;margin-bottom:14px!important;color:var(--v23-soft-text)!important}
#page-stats .stats-view-switcher{margin-bottom:22px!important}
#page-stats .stats-view-tabs{border-bottom:1px solid var(--v23-line)!important}
/* ---------- Secondary pages: remove oversized dashboard framing ---------- */
.v23-ui .vod-toolbar,.v23-ui .up-rank-panel,.v23-ui .poster-filter-tabs{box-shadow:none!important}
.v23-ui .btn{box-shadow:none}
/* ---------- Desktop: sidebar is replaced by global navigation ---------- */
@media (min-width:1101px){body.v23-ui>.app-sidebar{display:none!important}}
@media (min-width:1900px){.v23-ui .app-shell{width:min(1660px,calc(100% - 96px))!important;max-width:1660px!important}
.v23-global-header{padding-left:clamp(48px,4vw,96px)!important;padding-right:clamp(48px,4vw,96px)!important}}
@media (max-width:1380px) and (min-width:1101px){.v23-global-header{padding-left:24px!important;padding-right:24px!important;gap:14px!important}
.v23-global-brand{flex-basis:142px}
.v23-global-brand img{width:138px}
.v23-global-nav .v23-nav-tab.sidebar-tab{padding:0 9px!important;font-size:12px!important}
.v23-global-header .cloud-status{display:none!important}
.v23-ui .app-shell{width:min(100% - 44px,1480px)!important}}
/* ---------- Tablet/mobile: keep the existing drawer navigation ---------- */
@media (max-width:1100px){body.v23-ui{padding-left:0!important}
.v23-global-header{
    height:64px!important;padding:0 14px!important;gap:10px!important;background:color-mix(in srgb,var(--v23-bg) 94%,transparent)!important;
  }
.v23-global-header .v23-global-brand,.v23-global-header .v23-global-nav,.v23-soop-pill{display:none!important}
.v23-global-header .page-heading{display:grid!important;gap:0!important;min-width:0;margin-right:auto}
.v23-global-header .page-heading span{font-size:8px!important;letter-spacing:.14em!important;color:var(--v23-accent)!important}
.v23-global-header .page-heading strong{font-size:16px!important;color:var(--v23-text)!important;white-space:nowrap}
.v23-global-header .top-actions{gap:5px!important}
.v23-global-header .cloud-status{display:none!important}
.v23-global-header #themeToggle{height:36px!important;min-width:36px!important;padding:0 9px!important;font-size:10px!important}
.v23-ui .app-shell{width:100%!important;max-width:none!important;padding:18px 12px 86px!important}
.v23-page-intro{display:none!important}
.v23-ui .live-hub-header,.v23-ui .poster-archive-header,.v23-ui .vod-page-head,.v23-ui .up-rank-head,.v23-ui .schedule-page-head{padding-left:4px!important;padding-right:4px!important}}
.v23-global-header .v23-global-brand.sidebar-tab{
  width:168px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;transform:none!important;cursor:pointer!important;
}
.v23-global-header .v23-global-brand.sidebar-tab::after{display:none!important}
.v23-global-header .v23-global-brand.sidebar-tab:hover{background:transparent!important;transform:none!important}
/* High-specificity cleanup for legacy topbar positioning rules. */
html[data-theme="light"] body.v23-ui .v23-global-header{
  background:rgba(247,246,247,.92)!important;border-bottom-color:var(--v23-line)!important;
}
html[data-theme="dark"] body.v23-ui .v23-global-header{
  background:rgba(11,12,15,.92)!important;border-bottom-color:var(--v23-line)!important;
}
html[data-theme="light"] body.v23-ui .app-shell,html[data-theme="dark"] body.v23-ui .app-shell{background:transparent!important}
.v23-global-header .top-live-cluster{position:static!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:0 0 auto!important;overflow:visible!important}
.v23-global-header .live-toast{display:none!important}
/* ============================================================
   v23.0.1 · GLOBAL NAV VISIBILITY FIX
   Legacy .app-topbar .top-actions{width:100%} was consuming the
   entire header row and collapsing the center navigation to 0px.
   Desktop header is now an explicit 3-column grid:
   brand | global navigation | utilities.
   ============================================================ */
@media (min-width:1101px){body.v23-ui .v23-global-header{
    display:grid!important;
    grid-template-columns:168px minmax(0,1fr) max-content!important;
    align-items:center!important;
    column-gap:clamp(16px,1.5vw,28px)!important;
  }
body.v23-ui .v23-global-header .v23-global-brand{
    width:168px!important;
    min-width:168px!important;
    max-width:168px!important;
    justify-self:start!important;
  }
body.v23-ui .v23-global-header .v23-global-nav{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    display:flex!important;
    justify-content:center!important;
    overflow-x:auto!important;
    visibility:visible!important;
    opacity:1!important;
  }
body.v23-ui .v23-global-header .top-actions{
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    flex:none!important;
    justify-self:end!important;
    margin:0!important;
  }
body.v23-ui .v23-global-header .top-live-cluster{
    flex:0 0 auto!important;
    width:auto!important;
  }}
@media (max-width:1500px) and (min-width:1101px){body.v23-ui .v23-global-header{grid-template-columns:148px minmax(0,1fr) max-content!important;padding-left:22px!important;padding-right:22px!important}
body.v23-ui .v23-global-header .v23-global-brand{width:148px!important;min-width:148px!important;max-width:148px!important}
body.v23-ui .v23-global-header .v23-global-brand img{width:144px!important}
body.v23-ui .v23-global-header .v23-global-nav .v23-nav-tab.sidebar-tab{padding-left:9px!important;padding-right:9px!important;font-size:12px!important}
body.v23-ui .v23-global-header .cloud-status{display:none!important}}
@media (max-width:1240px) and (min-width:1101px){body.v23-ui .v23-global-header{grid-template-columns:132px minmax(0,1fr) max-content!important;column-gap:10px!important;padding-left:16px!important;padding-right:16px!important}
body.v23-ui .v23-global-header .v23-global-brand{width:132px!important;min-width:132px!important;max-width:132px!important}
body.v23-ui .v23-global-header .v23-global-brand img{width:128px!important}
body.v23-ui .v23-global-header .v23-global-nav{justify-content:flex-start!important}
body.v23-ui .v23-global-header .v23-global-nav .v23-nav-tab.sidebar-tab{padding-left:8px!important;padding-right:8px!important;font-size:11.5px!important}
body.v23-ui .v23-global-header .v23-soop-pill{display:none!important}}
@media (max-width:1100px){body.v23-ui .v23-global-header{display:flex!important}
body.v23-ui .v23-global-header .top-actions{width:auto!important;min-width:0!important;margin-left:auto!important}}
/* ============================================================
   v23.22 · LIGHT MODE HOME HEADER VISIBILITY
   home-v23.css intentionally uses white nav over the hero.
   In light mode the global header itself is light, so force the
   light-mode header controls/text back to dark readable colors.
   ============================================================ */
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-header{
  background:rgba(247,246,247,.94)!important;
  border-bottom-color:rgba(30,27,31,.10)!important;
  backdrop-filter:blur(18px) saturate(1.15)!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab{
  color:#716c73!important;
  text-shadow:none!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab:hover,html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab.active{
  color:#171619!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-brand img{
  filter:none!important;
  opacity:1!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-brand .v23-logo-light{
  display:block!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-global-brand .v23-logo-dark{
  display:none!important;
}html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .v23-soop-pill,html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top #themeToggle{
  background:#fff!important;
  border-color:#e3dfe2!important;
  color:#171619!important;
  box-shadow:0 5px 16px rgba(34,27,31,.06)!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top .cloud-status{
  color:#777179!important;
}
/* ============================================================
   v23.23 · hard light-mode header fix
   Must remain readable while the light header sits over the hero.
   ============================================================ */
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header{
  background:rgba(248,247,248,.96)!important;
  border-bottom:1px solid #e4e1e4!important;
  color:#171619!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-global-nav .v23-nav-tab.sidebar-tab{
  color:#69656b!important;
  text-shadow:none!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-global-nav .v23-nav-tab.sidebar-tab:hover,html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-global-nav .v23-nav-tab.sidebar-tab.active{
  color:#111014!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-global-brand img{
  filter:none!important;
  opacity:1!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-logo-light{
  display:block!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-logo-dark{
  display:none!important;
}html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .v23-soop-pill,html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header #themeToggle{
  color:#171619!important;
  background:#fff!important;
  border-color:#dfdcdf!important;
  filter:none!important;
  text-shadow:none!important;
}
html[data-theme="light"] body.v23-ui.home-v23-page.home-v23-at-top header.v23-global-header .cloud-status{
  color:#6f6a70!important;
}

/* ===== home-v23.css ===== */
/* ============================================================
   JINHO ARCHIVE · HOME V23.08
   Video hero + editorial portal + scroll reveal
   ============================================================ */
#page-home.home-v23-active{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
}
#page-home.home-v23-active> :not(.home-v23){display:none!important}
#page-home .home-v23{--home-max:1480px;--home-line:var(--v23-line,#e8e5e7);--home-text:var(--v23-text,#171519);--home-muted:var(--v23-muted,#817b83);--home-surface:var(--v23-surface,#fff);--home-bg:var(--v23-bg,#f7f6f7);--home-accent:var(--v23-accent,#ff4f7d);width:100%;min-height:100vh;background:var(--home-bg);color:var(--home-text);overflow:hidden}
body.home-v23-page .app-shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
/* ----- Header over hero ----- */
body.home-v23-page .v23-global-header{
  position:fixed!important;top:0!important;z-index:120!important;
  transition:background .28s ease,border-color .28s ease,box-shadow .28s ease,color .28s ease!important;
}
body.home-v23-page.home-v23-at-top .v23-global-header{
  border-bottom-color:rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(5,6,10,.68),rgba(5,6,10,.12))!important;
  backdrop-filter:blur(7px) saturate(1.05)!important;
}
body.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab{color:rgba(255,255,255,.68)!important}
body.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab:hover,body.home-v23-page.home-v23-at-top .v23-global-nav .v23-nav-tab.sidebar-tab.active{color:#fff!important}
body.home-v23-page.home-v23-at-top .v23-global-brand img{filter:brightness(0) invert(1);opacity:.96}body.home-v23-page.home-v23-at-top .v23-soop-pill,body.home-v23-page.home-v23-at-top #themeToggle{
  border-color:rgba(255,255,255,.16)!important;background:rgba(8,10,15,.35)!important;color:#fff!important;backdrop-filter:blur(10px)
}
body.home-v23-page.home-v23-at-top .cloud-status{color:rgba(255,255,255,.62)!important}
/* ----- Cinematic hero ----- */
.home-v23-hero{
  --hero-shift:0px;--hero-scale:1.025;
  position:relative;width:100%;height:clamp(570px,70vh,760px);min-height:570px;overflow:hidden;background:#090a0d;color:#fff;
  isolation:isolate;
}
.home-v23-hero-media{position:absolute;inset:0;overflow:hidden;background:#101116}
.home-v23-video,.home-v23-poster{
  position:absolute;inset:-4% 0 0;width:100%;height:108%;object-fit:cover;object-position:center center;
  transform:translate3d(0,var(--hero-shift),0) scale(var(--hero-scale));transform-origin:center center;
  transition:opacity .45s ease;will-change:transform;
}
.home-v23-video{z-index:1;opacity:0}
.home-v23.has-video .home-v23-video{opacity:1}
.home-v23-poster{z-index:0;opacity:1}
.home-v23-poster.is-under-video{opacity:0}
.home-v23-video-shade{position:absolute;z-index:2;inset:0;background:
  linear-gradient(90deg,rgba(6,7,11,.80) 0%,rgba(6,7,11,.48) 27%,rgba(6,7,11,.12) 58%,rgba(6,7,11,.24) 100%),
  linear-gradient(180deg,rgba(5,6,9,.16) 0%,rgba(5,6,9,.02) 40%,rgba(5,6,9,.88) 100%)}
.home-v23-video-noise{position:absolute;z-index:3;inset:0;opacity:.055;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}
.home-v23-hero-inner{position:relative;z-index:4;width:min(var(--home-max),calc(100% - 96px));height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-end;padding:118px 0 52px}
.home-v23-hero-copy{max-width:650px;animation:home23HeroIn .88s cubic-bezier(.16,1,.3,1) both}
.home-v23-live-state{display:inline-flex;align-items:center;gap:9px;margin:0 0 17px;font-size:10px;font-weight:900;letter-spacing:.18em;color:rgba(255,255,255,.76)}
.home-v23-live-state i{width:6px;height:6px;border-radius:50%;background:#ff5a84;box-shadow:0 0 0 5px rgba(255,90,132,.12)}
.home-v23-live-state.is-live i{background:#ff315e;box-shadow:0 0 0 5px rgba(255,49,94,.16),0 0 18px rgba(255,49,94,.55);animation:home23Pulse 1.8s infinite}
.home-v23-hero h1{margin:0;color:#fff!important;font-size:clamp(42px,4.7vw,74px);font-weight:900;line-height:1.02;letter-spacing:-.065em;text-shadow:0 8px 36px rgba(0,0,0,.3)}
.home-v23-hero h1 br+*{color:#fff}
.home-v23-hero-copy>p{max-width:570px;margin:20px 0 0;color:rgba(255,255,255,.72)!important;font-size:14px;line-height:1.75;white-space:normal}
.home-v23-hero-actions{display:flex;align-items:center;gap:10px;margin-top:27px}
.home-v23-hero-actions a,.home-v23-hero-actions button{height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border-radius:999px;font-size:12px;font-weight:850;text-decoration:none;cursor:pointer;transition:.2s ease}
.home-v23-primary{border:1px solid #ff5b82;background:#ff5b82;color:#fff;box-shadow:0 12px 34px rgba(255,70,119,.24)}
.home-v23-primary:hover{transform:translateY(-2px);background:#ff6b91}
.home-v23-secondary{border:1px solid rgba(255,255,255,.24);background:rgba(8,9,13,.2);color:#fff;backdrop-filter:blur(12px)}
.home-v23-secondary:hover{transform:translateY(-2px);background:rgba(255,255,255,.1)}
.home-v23-hero-foot{position:absolute;left:0;right:0;bottom:49px;display:flex;align-items:center;justify-content:flex-end;gap:16px;pointer-events:none}
.home-v23-hero-update{margin-right:auto;color:rgba(255,255,255,.44);font-size:9px;font-weight:800;letter-spacing:.14em;pointer-events:auto}
.home-v23-hero-update b{margin-left:7px;color:rgba(255,255,255,.78);font-size:10px;letter-spacing:0}
.home-v23-hero-controls{display:flex;gap:6px;pointer-events:auto}
.home-v23-hero-controls button{height:36px;min-width:36px;padding:0 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(7,8,11,.36);color:#fff;font-size:10px;font-weight:800;backdrop-filter:blur(10px);cursor:pointer}
.home-v23-hero-controls button:hover{background:rgba(255,255,255,.11)}
.home-v23-hero-controls .home-v23-hero-setting{padding:0 14px}
.home-v23-scroll{position:absolute;left:0;bottom:16px;display:flex;align-items:center;gap:11px;padding:0;border:0;background:transparent;color:rgba(255,255,255,.64);font-size:8px;font-weight:900;letter-spacing:.22em;cursor:pointer}
.home-v23-scroll i{display:block;width:42px;height:1px;background:rgba(255,255,255,.38);position:relative;overflow:hidden}
.home-v23-scroll i::after{content:"";position:absolute;left:-100%;top:0;width:100%;height:100%;background:#fff;animation:home23ScrollLine 2.2s infinite}
/* ----- Content frame ----- */
.home-v23-content{width:min(var(--home-max),calc(100% - 96px));margin:0 auto;padding:54px 0 90px}
.home-v23-overview{display:grid;grid-template-columns:.82fr 1.38fr .9fr;border-top:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}
.home-v23-section{min-width:0;padding:26px 28px 30px 0}
.home-v23-section+.home-v23-section{padding-left:28px;border-left:1px solid var(--home-line)}
.home-v23-section header,.home-v23-wide-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}
.home-v23-section header>div>span,.home-v23-wide-head>div>span,.home-v23-archive-copy>span{display:block;color:var(--home-accent);font-size:9px;font-weight:900;letter-spacing:.18em}
.home-v23-section h2,.home-v23-wide-head h2{margin:5px 0 0;color:var(--home-text)!important;font-size:23px;font-weight:850;letter-spacing:-.045em}
.home-v23-section header>button,.home-v23-wide-head>button{flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--home-muted);font-size:10px;font-weight:750;cursor:pointer}
.home-v23-section header>button:hover,.home-v23-wide-head>button:hover{color:var(--home-accent)}
.home-v23-wide-head p{margin:8px 0 0;color:var(--home-muted)!important;font-size:12px}
/* Today */
.home-v23-schedule-list{display:flex;flex-direction:column}
.home-v23-schedule-row{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr) 7px;align-items:center;gap:12px;min-height:58px;padding:0;border:0;border-bottom:1px solid var(--home-line);background:transparent;color:var(--home-text);text-align:left;cursor:pointer}
.home-v23-schedule-row:last-child{border-bottom:0}
.home-v23-schedule-row time{font-size:12px;font-weight:800;color:var(--home-muted)}
.home-v23-schedule-row span{min-width:0}
.home-v23-schedule-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:800}
.home-v23-schedule-row small{display:block;margin-top:4px;color:var(--home-muted);font-size:10px}
.home-v23-schedule-row>i{width:6px;height:6px;border-radius:50%;background:var(--event,#ff547d);box-shadow:0 0 0 4px color-mix(in srgb,var(--event,#ff547d) 12%,transparent)}
.home-v23-schedule-row:hover b{color:var(--home-accent)}
/* On air */
.home-v23-onair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-v23-live-card{min-width:0;text-decoration:none;color:inherit;transition:transform .24s ease}
.home-v23-live-card:hover{transform:translateY(-4px)}
.home-v23-live-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:13px;background:var(--v23-surface-2,#eee);border:1px solid var(--home-line)}
.home-v23-live-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .42s cubic-bezier(.16,1,.3,1)}
.home-v23-live-card:hover img{transform:scale(1.045)}
.home-v23-live-thumb::after{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,rgba(5,6,9,.62))}
.home-v23-live-thumb em{position:absolute;z-index:2;left:8px;top:8px;padding:4px 7px;border-radius:6px;background:#ff315e;color:#fff;font-style:normal;font-size:8px;font-weight:900;letter-spacing:.08em}
/* [v24.34] 홈 「현재 방송 중」 카드의 현재 시청자 수. 라이브 탭 배지와 같은 규칙입니다. */
.home-v23-live-viewers{position:absolute;z-index:2;right:8px;top:8px;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:6px;background:rgba(8,10,14,.74);border:1px solid rgba(255,255,255,.12);color:#fff;font-style:normal;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1}
.home-v23-live-viewers::before{content:"";width:5px;height:5px;border-radius:50%;background:#ff315e}
.home-v23-live-copy{display:block;padding:9px 2px 2px}
.home-v23-live-copy b{display:block;font-size:13px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-live-copy small{display:block;margin-top:3px;color:var(--home-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Activity */
.home-v23-activity-list{display:flex;flex-direction:column}
.home-v23-activity-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;border-bottom:1px solid var(--home-line)}
.home-v23-activity-row:last-child{border-bottom:0}
.home-v23-activity-row>img,.home-v23-activity-row>i{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--v23-surface-2,#eee)}
.home-v23-activity-row span{min-width:0}
.home-v23-activity-row b{display:block;font-size:11px;font-weight:850}
.home-v23-activity-row small{display:block;margin-top:3px;color:var(--home-muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-activity-row time{color:var(--home-muted);font-size:8px;white-space:nowrap}
.home-v23-empty{display:flex;flex-direction:column;justify-content:center;min-height:150px;margin:0;color:var(--home-muted)!important}
.home-v23-empty strong{color:var(--home-text);font-size:12px}
.home-v23-empty span{margin-top:6px;font-size:10px}
/* Wide sections */
.home-v23-block{margin-top:56px;padding-top:28px;border-top:1px solid var(--home-line)}
.home-v23-member-strip{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:12px}
.home-v23-member{min-width:0;padding:0;border:0;background:transparent;color:var(--home-text);text-align:center;cursor:pointer;transition:transform .24s ease}
.home-v23-member:hover{transform:translateY(-5px)}
.home-v23-member>span{display:block;width:min(94px,100%);aspect-ratio:1;margin:0 auto 10px;border-radius:50%;overflow:hidden;border:1px solid var(--home-line);background:var(--v23-surface-2,#eee);box-shadow:0 10px 26px rgba(20,20,30,.05)}
.home-v23-member img{width:100%;height:100%;object-fit:cover;transition:transform .42s cubic-bezier(.16,1,.3,1)}
.home-v23-member:hover img{transform:scale(1.07)}
.home-v23-member b{display:block;font-size:11px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-member small{display:block;margin-top:3px;color:var(--home-muted);font-size:9px}
.home-v23-vod-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-v23-vod-card{text-decoration:none;color:inherit;min-width:0;transition:transform .24s ease}
.home-v23-vod-card:hover{transform:translateY(-5px)}
.home-v23-vod-card>span{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;border-radius:14px;border:1px solid var(--home-line);background:var(--v23-surface-2,#eee)}
.home-v23-vod-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.home-v23-vod-card:hover img{transform:scale(1.04)}
.home-v23-vod-card em{position:absolute;right:8px;bottom:8px;padding:4px 7px;border-radius:6px;background:rgba(4,5,8,.72);color:#fff;font-style:normal;font-size:8px;font-weight:900;letter-spacing:.06em;backdrop-filter:blur(8px)}
.home-v23-vod-card>b{display:block;margin-top:10px;font-size:12px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-vod-card>small{display:block;margin-top:4px;color:var(--home-muted);font-size:9px}
.home-v23-archive{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.65fr);gap:54px;align-items:end;padding-bottom:10px}
.home-v23-archive-copy h2{margin:8px 0 0;color:var(--home-text)!important;font-size:clamp(32px,3.2vw,50px);font-weight:900;letter-spacing:-.06em;line-height:1.05}
.home-v23-archive-copy h2 em{font-style:normal;color:var(--home-accent)}
.home-v23-archive-copy p{max-width:420px;margin:14px 0 0;color:var(--home-muted)!important;font-size:11px;line-height:1.75}
.home-v23-archive-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}
.home-v23-archive-links button{position:relative;min-height:116px;padding:20px 32px 20px 18px;border:0;border-right:1px solid var(--home-line);background:transparent;color:var(--home-text);text-align:left;cursor:pointer;transition:background .2s ease}
.home-v23-archive-links button:last-child{border-right:0}
.home-v23-archive-links button:hover{background:color-mix(in srgb,var(--home-accent) 5%,transparent)}
.home-v23-archive-links b{display:block;font-size:14px;font-weight:850}
.home-v23-archive-links small{display:block;margin-top:7px;color:var(--home-muted);font-size:9px;line-height:1.45}
.home-v23-archive-links i{position:absolute;right:14px;top:18px;color:var(--home-muted);font-style:normal;font-size:13px;transition:.2s ease}
.home-v23-archive-links button:hover i{color:var(--home-accent);transform:translate(2px,-2px)}
/* ----- Scroll reveal ----- */
[data-home-reveal]{opacity:0;transform:translateY(28px);transition:opacity .72s var(--reveal-delay,0ms) ease,transform .82s var(--reveal-delay,0ms) cubic-bezier(.16,1,.3,1)}
[data-home-reveal].is-visible{opacity:1;transform:none}
[data-home-reveal].is-visible .home-v23-live-card,[data-home-reveal].is-visible .home-v23-member,[data-home-reveal].is-visible .home-v23-vod-card{animation:home23ItemIn .58s cubic-bezier(.16,1,.3,1) both}
[data-home-reveal].is-visible .home-v23-live-card:nth-child(2),[data-home-reveal].is-visible .home-v23-member:nth-child(2),[data-home-reveal].is-visible .home-v23-vod-card:nth-child(2){animation-delay:.05s}
[data-home-reveal].is-visible .home-v23-live-card:nth-child(3),[data-home-reveal].is-visible .home-v23-member:nth-child(3),[data-home-reveal].is-visible .home-v23-vod-card:nth-child(3){animation-delay:.10s}
[data-home-reveal].is-visible .home-v23-live-card:nth-child(4),[data-home-reveal].is-visible .home-v23-member:nth-child(4),[data-home-reveal].is-visible .home-v23-vod-card:nth-child(4){animation-delay:.15s}
[data-home-reveal].is-visible .home-v23-member:nth-child(n+5){animation-delay:.20s}
@keyframes home23HeroIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes home23ItemIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes home23ScrollLine{0%{left:-100%}50%,100%{left:100%}}
@keyframes home23Pulse{0%,100%{opacity:1}50%{opacity:.52}}
/* ----- Dark mode tune ----- */
html[data-theme="dark"] #page-home .home-v23{
  --home-line:rgba(255,255,255,.085);--home-text:#f3f3f6;--home-muted:#8f9099;--home-surface:#0d0f14;--home-bg:#090b10;
  background:linear-gradient(180deg,#090b10,#0b0d12 55%,#090b10)
}
html[data-theme="dark"] .home-v23-live-thumb,html[data-theme="dark"] .home-v23-member>span,html[data-theme="dark"] .home-v23-vod-card>span{background:#11141b;border-color:rgba(255,255,255,.08)}
html[data-theme="dark"] .home-v23-archive-links button:hover{background:rgba(255,255,255,.025)}
/* ----- Responsive ----- */
@media(max-width:1180px){.home-v23-hero-inner,.home-v23-content{width:min(100% - 56px,var(--home-max))}
.home-v23-overview{grid-template-columns:.85fr 1.25fr}
.home-v23-activity{grid-column:1/-1;border-left:0!important;border-top:1px solid var(--home-line);padding-left:0!important}
.home-v23-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.home-v23-member-strip{grid-template-columns:repeat(6,minmax(0,1fr))}
.home-v23-archive{grid-template-columns:1fr;gap:26px}}
@media(max-width:900px){body.home-v23-page .v23-global-header{position:sticky!important}
body.home-v23-page.home-v23-at-top .v23-global-header{background:color-mix(in srgb,var(--v23-bg) 92%,transparent)!important;border-bottom-color:var(--v23-line)!important}
body.home-v23-page.home-v23-at-top .page-heading strong{color:var(--v23-text)!important}body.home-v23-page.home-v23-at-top #themeToggle{background:var(--v23-surface)!important;color:var(--v23-text)!important;border-color:var(--v23-line)!important}
.home-v23-hero{height:620px;min-height:620px}
.home-v23-hero-inner,.home-v23-content{width:calc(100% - 36px)}
.home-v23-hero-inner{padding-top:92px;padding-bottom:46px}
.home-v23-hero-foot{bottom:46px}
.home-v23-hero-update{display:none}
.home-v23-overview{grid-template-columns:1fr}
.home-v23-section,.home-v23-section+.home-v23-section{padding:24px 0 27px;border-left:0;border-top:1px solid var(--home-line)}
.home-v23-section:first-child{border-top:0}
.home-v23-activity-list{grid-template-columns:1fr}
.home-v23-member-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
.home-v23-vod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-v23-archive-links{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-v23-archive-links button:nth-child(2){border-right:0}
.home-v23-archive-links button:nth-child(-n+2){border-bottom:1px solid var(--home-line)}}
@media(max-width:560px){.home-v23-hero{height:560px;min-height:560px}
.home-v23-hero-inner,.home-v23-content{width:calc(100% - 28px)}
.home-v23-hero-inner{padding:80px 0 38px}
.home-v23-hero h1{font-size:39px}
.home-v23-hero-copy>p{font-size:12px;line-height:1.65}
.home-v23-hero-actions{margin-top:22px}
.home-v23-hero-actions a,.home-v23-hero-actions button{height:42px;padding:0 16px;font-size:11px}
.home-v23-hero-foot{bottom:37px}
.home-v23-scroll{bottom:12px}
.home-v23-content{padding-top:38px;padding-bottom:72px}
.home-v23-onair-grid{grid-template-columns:1fr 1fr;gap:8px}
.home-v23-section h2,.home-v23-wide-head h2{font-size:21px}
.home-v23-wide-head{align-items:flex-start}
.home-v23-wide-head p{display:none}
.home-v23-member-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:none}
.home-v23-member-strip::-webkit-scrollbar{display:none}
.home-v23-member{flex:0 0 80px;scroll-snap-align:start}
.home-v23-vod-grid{grid-template-columns:1fr 1fr;gap:10px}
.home-v23-archive-copy h2{font-size:34px}
.home-v23-archive-links{grid-template-columns:1fr 1fr}
.home-v23-archive-links button{min-height:104px;padding:16px 26px 16px 14px}}
@media(prefers-reduced-motion:reduce){.home-v23 *{animation:none!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
[data-home-reveal]{opacity:1!important;transform:none!important}
.home-v23-video,.home-v23-poster{transform:none!important}}
/* ============================================================
   V23.09 · live thumbnail / activity detail / persistent hero settings
   ============================================================ */
/* ON AIR: always treat the image as a broadcast thumbnail, never as an avatar */
.home-v23-onair-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.home-v23-live-card{display:block;min-width:0}
.home-v23-live-thumb{
  aspect-ratio:16/9;
  border-radius:12px;
  background:#11141a;
}
.home-v23-live-thumb img{
  width:100%;height:100%;object-fit:cover;object-position:center center;
}
.home-v23-live-copy{padding:10px 2px 0}
.home-v23-live-copy b{font-size:13px}
.home-v23-live-title{font-size:10px!important;color:var(--home-muted)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-live-duration{margin-top:5px!important;font-size:9px!important;color:color-mix(in srgb,var(--home-accent) 72%,var(--home-muted))!important;font-weight:800}
/* ACTIVITY: keep the compact feed, but show the actual event label and summary */
.home-v23-activity-list{display:flex;flex-direction:column}
.home-v23-activity-row{
  width:100%;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;
  min-height:56px;padding:9px 0;border:0;border-bottom:1px solid var(--home-line);background:transparent;color:inherit;text-align:left;text-decoration:none;cursor:pointer;
}
.home-v23-activity-row:last-child{border-bottom:0}
.home-v23-activity-row:hover .home-v23-activity-line b{color:var(--home-accent)}
.home-v23-activity-avatar{display:block;width:30px;height:30px;border-radius:50%;overflow:hidden;background:var(--v23-surface-2,#eee)}
.home-v23-activity-avatar img,.home-v23-activity-avatar i{display:block;width:100%;height:100%;object-fit:cover}
.home-v23-activity-copy{min-width:0;display:block}
.home-v23-activity-line{display:flex;align-items:center;gap:7px;min-width:0}
.home-v23-activity-line b{font-size:11px;font-weight:900;white-space:nowrap;transition:color .18s ease}
.home-v23-activity-line em{min-width:0;color:var(--home-accent);font-size:9px;font-style:normal;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-activity-copy>small{display:block;margin-top:4px;color:var(--home-muted);font-size:9px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-v23-activity-row>time{align-self:start;margin-top:3px;color:var(--home-muted);font-size:8px;white-space:nowrap}
/* Persistent in-page hero settings modal. Clicking outside intentionally does not close it. */
body.home-v23-settings-open{overflow:hidden}
.home-v23-settings-layer[hidden]{display:none!important}
.home-v23-settings-layer{
  position:fixed;z-index:500;inset:0;display:grid;place-items:center;padding:24px;
  background:rgba(4,5,8,.64);backdrop-filter:blur(12px);
  opacity:0;transition:opacity .18s ease;
}
.home-v23-settings-layer.is-open{opacity:1}
.home-v23-settings-panel{
  width:min(620px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;
  border:1px solid var(--home-line);border-radius:22px;background:var(--home-surface);color:var(--home-text);
  box-shadow:0 32px 90px rgba(0,0,0,.32);transform:translateY(12px) scale(.985);transition:transform .22s cubic-bezier(.16,1,.3,1);
}
.home-v23-settings-layer.is-open .home-v23-settings-panel{transform:none}
.home-v23-settings-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px 18px;border-bottom:1px solid var(--home-line)}
.home-v23-settings-panel>header span{display:block;margin-bottom:6px;color:var(--home-accent);font-size:9px;font-weight:900;letter-spacing:.18em}
.home-v23-settings-panel>header h2{margin:0;color:var(--home-text)!important;font-size:24px;font-weight:900;letter-spacing:-.04em}
.home-v23-settings-panel>header>button{width:34px;height:34px;border:1px solid var(--home-line);border-radius:50%;background:transparent;color:var(--home-text);font-size:20px;line-height:1;cursor:pointer}
.home-v23-settings-panel form{display:grid;gap:18px;padding:24px 26px 26px}
.home-v23-settings-panel label{display:grid;gap:8px}
.home-v23-settings-panel label>span{font-size:11px;font-weight:850;color:var(--home-text)}
.home-v23-settings-panel input,.home-v23-settings-panel textarea{
  width:100%;box-sizing:border-box;border:1px solid var(--home-line);border-radius:12px;background:var(--home-bg);color:var(--home-text);padding:12px 13px;font:inherit;font-size:12px;outline:none;resize:vertical;
}
.home-v23-settings-panel input:focus,.home-v23-settings-panel textarea:focus{border-color:color-mix(in srgb,var(--home-accent) 66%,var(--home-line));box-shadow:0 0 0 3px color-mix(in srgb,var(--home-accent) 10%,transparent)}
.home-v23-settings-panel label>small{color:var(--home-muted);font-size:9px;line-height:1.5}
.home-v23-settings-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}
.home-v23-settings-actions button{min-width:84px;height:40px;border-radius:999px;font-size:11px;font-weight:850;cursor:pointer}
.home-v23-settings-actions .secondary{border:1px solid var(--home-line);background:transparent;color:var(--home-text)}
.home-v23-settings-actions .primary{border:1px solid var(--home-accent);background:var(--home-accent);color:#fff}
html[data-theme="dark"] .home-v23-settings-panel{background:#0f1218}
html[data-theme="dark"] .home-v23-settings-panel input,html[data-theme="dark"] .home-v23-settings-panel textarea{background:#0a0d12}
@media(max-width:1180px){.home-v23-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}}
@media(max-width:900px){.home-v23-activity-list{grid-template-columns:1fr}}
@media(max-width:560px){.home-v23-onair-grid{grid-template-columns:1fr 1fr;gap:8px}
.home-v23-live-copy b{font-size:12px}
.home-v23-settings-layer{padding:12px}
.home-v23-settings-panel>header,.home-v23-settings-panel form{padding-left:18px;padding-right:18px}}
/* ============================================================
   V23.10 · activity cleanup + stable hero settings dialog
   ============================================================ */
/* YouTube hero support */
.home-v23-youtube,.home-v23-soop{
  position:absolute;z-index:1;inset:-6% -4%;width:108%;height:112%;border:0;
  opacity:0;pointer-events:none;transform:translate3d(0,var(--hero-shift),0) scale(var(--hero-scale));
  transform-origin:center center;transition:opacity .45s ease;will-change:transform;
}
.home-v23.has-youtube .home-v23-youtube,.home-v23.has-soop .home-v23-soop{opacity:1}
.home-v23.has-youtube .home-v23-video,.home-v23.has-soop .home-v23-video{opacity:0!important}
.home-v23.has-youtube .home-v23-poster,.home-v23.has-soop .home-v23-poster{opacity:0}
/* Activity rows are buttons on purpose: no browser link blue/underline styles can leak in. */
#page-home .home-v23 .home-v23-activity-row,#page-home .home-v23 .home-v23-activity-row:link,#page-home .home-v23 .home-v23-activity-row:visited,#page-home .home-v23 .home-v23-activity-row:hover,#page-home .home-v23 .home-v23-activity-row:active{
  appearance:none!important;-webkit-appearance:none!important;
  color:var(--home-text)!important;text-decoration:none!important;
  font:inherit!important;outline:0!important;
}
#page-home .home-v23 .home-v23-activity-row *{
  text-decoration:none!important;
}
#page-home .home-v23 .home-v23-activity-line b{
  color:var(--home-text)!important;font-size:12px!important;font-weight:900!important;
}
#page-home .home-v23 .home-v23-activity-line em{
  color:var(--home-accent)!important;font-size:10px!important;font-style:normal!important;font-weight:850!important;
}
#page-home .home-v23 .home-v23-activity-copy>small{
  color:var(--home-muted)!important;font-size:10px!important;line-height:1.45!important;
}
#page-home .home-v23 .home-v23-activity-row>time{
  color:var(--home-muted)!important;font-size:9px!important;text-decoration:none!important;
}
#page-home .home-v23 .home-v23-activity-row:hover{
  background:color-mix(in srgb,var(--home-accent) 4%,transparent)!important;
}
#page-home .home-v23 .home-v23-activity-row:hover .home-v23-activity-line b{
  color:var(--home-accent)!important;
}
/* Stable settings dialog. It is moved to <body> while open, so define its own theme tokens. */
body>.home-v23-settings-layer{
  --home-accent:var(--v23-accent,#ff4f7d);
  --home-text:var(--v23-text,#171519);
  --home-muted:var(--v23-muted,#817b83);
  --home-line:var(--v23-line,#e6e2e6);
  --home-surface:var(--v23-surface,#fff);
  --home-bg:var(--v23-bg,#f7f6f7);
  position:fixed!important;z-index:2147483000!important;inset:0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100vw!important;height:100dvh!important;margin:0!important;padding:24px!important;
  box-sizing:border-box!important;background:rgba(7,8,12,.68)!important;backdrop-filter:blur(14px)!important;
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease;
}
body>.home-v23-settings-layer[hidden]{display:none!important}
body>.home-v23-settings-layer.is-open{opacity:1;visibility:visible;pointer-events:auto}
html[data-theme="dark"] body>.home-v23-settings-layer{
  --home-text:#f4f5f7;--home-muted:#969ba8;--home-line:rgba(255,255,255,.11);--home-surface:#10131a;--home-bg:#0b0e13;
}
body>.home-v23-settings-layer .home-v23-settings-panel{
  position:relative!important;display:block!important;float:none!important;
  width:min(640px,calc(100vw - 48px))!important;max-width:640px!important;
  max-height:calc(100dvh - 48px)!important;margin:0!important;padding:0!important;
  overflow:auto!important;box-sizing:border-box!important;
  border:1px solid var(--home-line)!important;border-radius:22px!important;
  background:var(--home-surface)!important;color:var(--home-text)!important;
  box-shadow:0 34px 100px rgba(0,0,0,.34)!important;
  transform:translateY(14px) scale(.985)!important;transition:transform .22s cubic-bezier(.16,1,.3,1)!important;
}
body>.home-v23-settings-layer.is-open .home-v23-settings-panel{transform:none!important}
body>.home-v23-settings-layer .home-v23-settings-panel>header{
  position:static!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
  gap:20px!important;width:auto!important;height:auto!important;margin:0!important;padding:24px 26px 18px!important;
  border:0!important;border-bottom:1px solid var(--home-line)!important;background:transparent!important;box-shadow:none!important;
}
body>.home-v23-settings-layer .home-v23-settings-panel>header div{display:block!important;min-width:0!important}
body>.home-v23-settings-layer .home-v23-settings-panel>header span{display:block!important;margin:0 0 6px!important;color:var(--home-accent)!important;font-size:9px!important;font-weight:900!important;letter-spacing:.18em!important}
body>.home-v23-settings-layer .home-v23-settings-panel>header h2{margin:0!important;color:var(--home-text)!important;font-size:24px!important;font-weight:900!important;line-height:1.15!important;letter-spacing:-.04em!important}
body>.home-v23-settings-layer .home-v23-settings-panel>header>button{
  flex:0 0 34px!important;width:34px!important;height:34px!important;margin:0!important;padding:0!important;
  border:1px solid var(--home-line)!important;border-radius:50%!important;background:transparent!important;color:var(--home-text)!important;
  font-size:20px!important;font-weight:500!important;line-height:1!important;cursor:pointer!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important;
  width:100%!important;margin:0!important;padding:22px 26px 26px!important;box-sizing:border-box!important;
  background:transparent!important;border:0!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm>label{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;
  width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm>label>span{
  display:block!important;color:var(--home-text)!important;font-size:11px!important;font-weight:850!important;line-height:1.4!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm>label>small{
  display:block!important;margin:0!important;color:var(--home-muted)!important;font-size:10px!important;line-height:1.55!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm input,body>.home-v23-settings-layer #homeV23SettingsForm textarea{
  display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;
  margin:0!important;padding:12px 13px!important;box-sizing:border-box!important;
  border:1px solid var(--home-line)!important;border-radius:12px!important;
  background:var(--home-bg)!important;color:var(--home-text)!important;
  font-family:inherit!important;font-size:12px!important;font-weight:500!important;line-height:1.55!important;
  text-align:left!important;text-decoration:none!important;outline:none!important;resize:vertical!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm input{min-height:44px!important}
body>.home-v23-settings-layer #homeV23SettingsForm textarea{min-height:86px!important}
body>.home-v23-settings-layer #homeV23SettingsForm input:focus,body>.home-v23-settings-layer #homeV23SettingsForm textarea:focus{
  border-color:color-mix(in srgb,var(--home-accent) 65%,var(--home-line))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--home-accent) 10%,transparent)!important;
}
body>.home-v23-settings-layer .home-v23-settings-actions{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;margin:2px 0 0!important;padding:0!important;
}
body>.home-v23-settings-layer .home-v23-settings-actions button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:86px!important;height:40px!important;margin:0!important;padding:0 17px!important;
  border-radius:999px!important;font-family:inherit!important;font-size:11px!important;font-weight:850!important;cursor:pointer!important;
}
body>.home-v23-settings-layer .home-v23-settings-actions .secondary{border:1px solid var(--home-line)!important;background:transparent!important;color:var(--home-text)!important}
body>.home-v23-settings-layer .home-v23-settings-actions .primary{border:1px solid var(--home-accent)!important;background:var(--home-accent)!important;color:#fff!important}
@media(max-width:560px){body>.home-v23-settings-layer{padding:12px!important}
body>.home-v23-settings-layer .home-v23-settings-panel{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;border-radius:18px!important}
body>.home-v23-settings-layer .home-v23-settings-panel>header{padding:20px 18px 16px!important}
body>.home-v23-settings-layer #homeV23SettingsForm{padding:18px!important}}
/* ============================================================
   V23.11 · HERO copy compact / left aligned / overlap cleanup
   ============================================================ */
@media (min-width: 901px){.home-v23-hero-inner{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:112px clamp(34px,4.2vw,76px) 54px!important;
    justify-content:flex-end!important;
  }
.home-v23-hero-copy{
    max-width:430px!important;
    margin:0!important;
  }
.home-v23-hero h1{
    max-width:430px;
    font-size:clamp(38px,3.25vw,54px)!important;
    line-height:1.04!important;
    letter-spacing:-.055em!important;
  }
.home-v23-hero-copy>p{
    max-width:390px!important;
    margin-top:14px!important;
    font-size:13px!important;
    line-height:1.65!important;
  }
.home-v23-live-state{margin-bottom:12px!important}
.home-v23-hero-actions{margin-top:20px!important}
.home-v23-hero-actions a,.home-v23-hero-actions button{
    height:42px!important;
    padding:0 17px!important;
  }
/* Last-update text was colliding with CTA buttons. Keep controls only. */
.home-v23-hero-update{display:none!important}
.home-v23-hero-foot{
    left:auto!important;
    right:clamp(34px,4.2vw,76px)!important;
    bottom:46px!important;
    width:auto!important;
  }
.home-v23-scroll{
    left:clamp(34px,4.2vw,76px)!important;
    bottom:18px!important;
  }
/* Keep the video visible: only protect the text on the far-left side. */
.home-v23-video-shade{
    background:
      linear-gradient(90deg,rgba(6,7,11,.72) 0%,rgba(6,7,11,.40) 18%,rgba(6,7,11,.08) 43%,rgba(6,7,11,.12) 100%),
      linear-gradient(180deg,rgba(5,6,9,.08) 0%,rgba(5,6,9,.01) 48%,rgba(5,6,9,.72) 100%)!important;
  }}
@media (min-width: 1500px){.home-v23-hero-inner{
    padding-left:clamp(48px,3.3vw,72px)!important;
  }
.home-v23-scroll{left:clamp(48px,3.3vw,72px)!important}}
/* ============================================================
   V23.12 · HOME horizontal alignment / true full-bleed hero
   ============================================================ */
@media (min-width: 901px){/* Break the hero out of any inherited page/container width. */
#page-home.home-v23-active .home-v23-hero{
    width:100vw!important;
    max-width:100vw!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
  }
#page-home.home-v23-active .home-v23-hero-media{
    left:0!important;right:0!important;width:100%!important;
  }
#page-home.home-v23-active .home-v23-video,#page-home.home-v23-active .home-v23-poster{
    width:100%!important;max-width:none!important;
  }
#page-home.home-v23-active .home-v23-youtube,#page-home.home-v23-active .home-v23-soop{
    left:-4%!important;right:-4%!important;width:108%!important;max-width:none!important;
  }
/* Use the same 4vw gutter from left and right across hero and body. */
#page-home .home-v23-hero-inner{
    width:100%!important;
    padding-left:4vw!important;
    padding-right:4vw!important;
  }
#page-home .home-v23-hero-foot{right:4vw!important}
#page-home .home-v23-scroll{left:4vw!important}
#page-home .home-v23-content{
    width:92vw!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
/* Keep the three top columns balanced on wide/QHD screens. */
#page-home .home-v23-overview{
    grid-template-columns:minmax(250px,.82fr) minmax(520px,1.38fr) minmax(300px,.9fr)!important;
  }}
@media (min-width: 1900px){#page-home .home-v23-content{width:94vw!important}
#page-home .home-v23-hero-inner{padding-left:3vw!important;padding-right:3vw!important}
#page-home .home-v23-hero-foot{right:3vw!important}
#page-home .home-v23-scroll{left:3vw!important}}
/* ============================================================
   V23.13 · MEMBERS compact carousel
   - fixed item rhythm instead of full-width distributed grid
   - larger, cleaner labels
   - all members available with arrow / swipe navigation
   ============================================================ */
#page-home .home-v23-members .home-v23-wide-head{
  margin-bottom:16px!important;
}
#page-home .home-v23-member-carousel{
  position:relative;
  width:min(1380px,calc(100% - 92px));
  margin:0 auto;
}
#page-home .home-v23-member-strip{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:flex-start;
  gap:18px!important;
  width:100%;
  padding:8px 2px 14px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x proximity;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
#page-home .home-v23-member-strip::-webkit-scrollbar{display:none}
#page-home .home-v23-member-carousel.is-all-visible .home-v23-member-strip{
  justify-content:center;
}
#page-home .home-v23-member{
  flex:0 0 118px!important;
  width:118px;
  min-width:118px!important;
  scroll-snap-align:start;
  padding:4px 4px 8px!important;
  border-radius:18px;
}
#page-home .home-v23-member>span{
  width:88px!important;
  height:88px;
  aspect-ratio:1!important;
  margin:0 auto 11px!important;
  border:1px solid color-mix(in srgb,var(--v23-accent,#ff4778) 20%,var(--home-line));
  box-shadow:0 10px 26px rgba(20,20,30,.08);
}
#page-home .home-v23-member b{
  display:block;
  min-height:20px;
  padding:0 2px;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.35!important;
  letter-spacing:-.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
#page-home .home-v23-member small{
  margin-top:4px!important;
  font-size:10px!important;
  line-height:1.3!important;
  font-weight:650;
  letter-spacing:0;
}
#page-home .home-v23-member-arrow{
  position:absolute;
  z-index:4;
  top:48px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--home-line);
  border-radius:50%;
  background:color-mix(in srgb,var(--home-bg) 88%,transparent);
  color:var(--home-text);
  box-shadow:0 10px 28px rgba(10,12,20,.10);
  backdrop-filter:blur(14px);
  font-size:26px;
  font-weight:400;
  line-height:1;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,opacity .2s ease,background .2s ease;
}
#page-home .home-v23-member-arrow.is-prev{left:-46px}
#page-home .home-v23-member-arrow.is-next{right:-46px}
#page-home .home-v23-member-arrow:hover:not(:disabled){
  transform:scale(1.06);
  border-color:color-mix(in srgb,var(--v23-accent,#ff4778) 55%,var(--home-line));
  background:color-mix(in srgb,var(--v23-accent,#ff4778) 8%,var(--home-bg));
}
#page-home .home-v23-member-arrow:disabled{opacity:.25;cursor:default}
#page-home .home-v23-member-pager{
  min-height:16px;
  margin:3px auto 0;
  color:var(--home-muted);
  font-size:10px;
  font-weight:750;
  letter-spacing:.05em;
  text-align:center;
}
html[data-theme="dark"] #page-home .home-v23-member-arrow{
  background:rgba(15,17,24,.82);
  border-color:rgba(255,255,255,.10);
  box-shadow:0 12px 30px rgba(0,0,0,.24);
}
@media(max-width:1100px){#page-home .home-v23-member-carousel{width:calc(100% - 76px)}
#page-home .home-v23-member{flex-basis:108px!important;width:108px;min-width:108px!important}
#page-home .home-v23-member>span{width:82px!important;height:82px}
#page-home .home-v23-member-arrow.is-prev{left:-38px}
#page-home .home-v23-member-arrow.is-next{right:-38px}}
@media(max-width:680px){#page-home .home-v23-member-carousel{width:100%}
#page-home .home-v23-member-strip{gap:12px!important;padding:6px 40px 12px 2px}
#page-home .home-v23-member{flex-basis:92px!important;width:92px;min-width:92px!important;padding-inline:2px!important}
#page-home .home-v23-member>span{width:72px!important;height:72px;margin-bottom:9px!important}
#page-home .home-v23-member b{font-size:12px!important}
#page-home .home-v23-member small{font-size:9px!important}
#page-home .home-v23-member-arrow{top:37px;width:34px;height:34px;font-size:23px}
#page-home .home-v23-member-arrow.is-prev{left:4px}
#page-home .home-v23-member-arrow.is-next{right:4px}
#page-home .home-v23-member-carousel::before,#page-home .home-v23-member-carousel::after{content:"";position:absolute;z-index:2;top:0;bottom:24px;width:28px;pointer-events:none}
#page-home .home-v23-member-carousel::before{left:0;background:linear-gradient(90deg,var(--home-bg),transparent)}
#page-home .home-v23-member-carousel::after{right:0;background:linear-gradient(270deg,var(--home-bg),transparent)}}
/* ============================================================
   V23.14 · FULL-VIEWPORT CINEMATIC HERO
   - first screen is the video itself
   - source ratio is preserved with cover on every resolution
   - text/controls stay small and sit at the bottom edges
   ============================================================ */
#page-home .home-v23{
  --home-hero-x:50%;
  --home-hero-y:50%;
}
#page-home .home-v23-hero{
  height:100svh!important;
  min-height:560px!important;
  max-height:none!important;
}
@supports(height:100dvh){#page-home .home-v23-hero{height:100dvh!important}}
#page-home .home-v23-hero-media{
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
#page-home .home-v23-video,#page-home .home-v23-poster{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:var(--home-hero-x) var(--home-hero-y)!important;
  transform:translate3d(0,var(--hero-shift),0) scale(var(--hero-scale))!important;
}
#page-home .home-v23-youtube,#page-home .home-v23-soop{
  inset:auto!important;
  width:max(100%,177.78svh)!important;
  height:max(100%,56.25vw)!important;
  max-width:none!important;
  max-height:none!important;
  transform-origin:center center!important;
}
#page-home .home-v23-video-shade{
  background:
    linear-gradient(90deg,rgba(4,5,8,.56) 0%,rgba(4,5,8,.22) 24%,rgba(4,5,8,.03) 55%,rgba(4,5,8,.10) 100%),
    linear-gradient(180deg,rgba(4,5,8,.18) 0%,rgba(4,5,8,.01) 43%,rgba(4,5,8,.72) 100%)!important;
}
#page-home .home-v23-hero-inner{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 clamp(28px,4vw,76px) clamp(50px,6vh,82px)!important;
  justify-content:flex-end!important;
  align-items:flex-start!important;
}
#page-home .home-v23-hero-copy{
  width:min(540px,48vw)!important;
  max-width:540px!important;
  margin:0!important;
}
#page-home .home-v23-live-state{
  margin-bottom:12px!important;
  font-size:9px!important;
  letter-spacing:.20em!important;
}
#page-home .home-v23-hero h1{
  max-width:520px!important;
  font-size:clamp(34px,3.25vw,58px)!important;
  line-height:1.01!important;
  letter-spacing:-.055em!important;
  text-shadow:0 8px 28px rgba(0,0,0,.30)!important;
}
#page-home .home-v23-hero-copy>p{
  max-width:480px!important;
  margin-top:13px!important;
  font-size:12px!important;
  line-height:1.65!important;
  color:rgba(255,255,255,.68)!important;
}
#page-home .home-v23-hero-actions{margin-top:20px!important;gap:8px!important}
#page-home .home-v23-hero-actions a,#page-home .home-v23-hero-actions button{
  height:40px!important;
  padding:0 17px!important;
  font-size:11px!important;
}
#page-home .home-v23-hero-foot{
  left:auto!important;
  right:clamp(28px,4vw,76px)!important;
  bottom:clamp(48px,6vh,82px)!important;
  width:auto!important;
}
#page-home .home-v23-scroll{
  left:clamp(28px,4vw,76px)!important;
  bottom:18px!important;
}
#page-home .home-v23-hero-update{display:none!important}
/* The first content section starts only after one complete hero viewport. */
#page-home .home-v23-content{
  padding-top:58px!important;
}
/* Position controls in the persistent settings modal. */
body>.home-v23-settings-layer .home-v23-position-settings{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  padding:14px!important;
  border:1px solid var(--home-line)!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--home-bg) 72%,var(--home-surface))!important;
}
body>.home-v23-settings-layer .home-v23-position-settings>label{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-width:0!important;
}
body>.home-v23-settings-layer .home-v23-position-settings>label>span{
  display:flex!important;
  justify-content:space-between!important;
  gap:12px!important;
  color:var(--home-text)!important;
  font-size:11px!important;
  font-weight:850!important;
}
body>.home-v23-settings-layer .home-v23-position-settings>label>span b{
  color:var(--home-accent)!important;
  font-size:10px!important;
}
body>.home-v23-settings-layer .home-v23-position-settings>label>small{
  color:var(--home-muted)!important;
  font-size:9px!important;
  line-height:1.45!important;
}
body>.home-v23-settings-layer #homeV23SettingsForm input[type="range"]{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  width:100%!important;
  min-height:0!important;
  height:18px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  accent-color:var(--home-accent)!important;
  cursor:pointer!important;
}
@media(max-width:900px){#page-home .home-v23-hero{
    min-height:520px!important;
  }
#page-home .home-v23-hero-inner{
    padding:0 22px 64px!important;
  }
#page-home .home-v23-hero-copy{
    width:min(520px,78vw)!important;
  }
#page-home .home-v23-hero h1{
    font-size:clamp(34px,7vw,54px)!important;
  }
#page-home .home-v23-hero-foot{
    right:22px!important;
    bottom:64px!important;
  }
#page-home .home-v23-scroll{left:22px!important}}
@media(max-width:560px){#page-home .home-v23-hero{
    height:100svh!important;
    min-height:520px!important;
  }
#page-home .home-v23-hero-inner{
    padding:0 18px 72px!important;
  }
#page-home .home-v23-hero-copy{width:calc(100vw - 36px)!important}
#page-home .home-v23-hero h1{font-size:clamp(32px,11vw,46px)!important;max-width:88vw!important}
#page-home .home-v23-hero-copy>p{max-width:88vw!important;font-size:11px!important}
#page-home .home-v23-hero-foot{right:18px!important;bottom:20px!important}
#page-home .home-v23-scroll{left:18px!important;bottom:20px!important}
#page-home .home-v23-hero-controls .home-v23-hero-setting{display:none!important}
body>.home-v23-settings-layer .home-v23-position-settings{grid-template-columns:1fr!important}}
#page-home .home-v23-hero-controls button:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  pointer-events:auto!important;
}
/* ============================================================
   V23.16 · SOOP embed player ratio / playback fix
   ============================================================ */
/* SOOP must use the embed player itself, not the full VOD webpage. */
#page-home .home-v23.has-soop .home-v23-soop{
  pointer-events:auto!important;
  opacity:1!important;
  background:#000!important;
}
/* The fullscreen transparent hero layer used to block the SOOP player's controls. */
#page-home .home-v23.has-soop .home-v23-hero-inner{
  pointer-events:none!important;
}
#page-home .home-v23.has-soop .home-v23-hero-copy,#page-home .home-v23.has-soop .home-v23-hero-actions,#page-home .home-v23.has-soop .home-v23-hero-foot,#page-home .home-v23.has-soop .home-v23-hero-controls,#page-home .home-v23.has-soop .home-v23-scroll{
  pointer-events:auto!important;
}
#page-home .home-v23.has-soop .home-v23-video-shade,#page-home .home-v23.has-soop .home-v23-video-noise{
  pointer-events:none!important;
}
/* SOOP embeds are native 16:9 players. Fill the hero while preserving that ratio. */
#page-home .home-v23.has-soop .home-v23-soop{
  left:50%!important;
  top:50%!important;
  width:max(100vw,177.7778svh)!important;
  height:max(100svh,56.25vw)!important;
  min-width:100vw!important;
  min-height:100svh!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
  border:0!important;
}
/* Don't place duplicate custom media controls over SOOP's native controls. */
#page-home .home-v23.has-soop #homeV23Mute,#page-home .home-v23.has-soop #homeV23Play{
  display:none!important;
}
/* Make the overlay less heavy in SOOP mode so the embedded video/controls stay readable. */
#page-home .home-v23.has-soop .home-v23-video-shade{
  background:
    linear-gradient(90deg,rgba(4,5,8,.36) 0%,rgba(4,5,8,.12) 26%,rgba(4,5,8,.01) 58%,rgba(4,5,8,.04) 100%),
    linear-gradient(180deg,rgba(4,5,8,.08) 0%,rgba(4,5,8,0) 55%,rgba(4,5,8,.34) 100%)!important;
}
@media (max-width:700px){#page-home .home-v23.has-soop .home-v23-soop{
    width:max(100vw,177.7778svh)!important;
    height:max(100svh,56.25vw)!important;
  }}
/* ============================================================
   V23.17 · Local video upload field
   ============================================================ */
body>.home-v23-settings-layer .home-v23-video-upload{
  display:grid!important;
  gap:10px!important;
  padding:14px!important;
  border:1px solid var(--home-line)!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--home-surface) 94%,var(--home-accent) 6%)!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-head{
  display:grid!important;
  gap:4px!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-head>span{
  color:var(--home-text)!important;
  font-size:11px!important;
  font-weight:900!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-head>small{
  color:var(--home-muted)!important;
  font-size:9px!important;
  line-height:1.5!important;
}
body>.home-v23-settings-layer .home-v23-video-file-picker{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:48px!important;
  padding:8px 10px!important;
  border:1px dashed color-mix(in srgb,var(--home-accent) 34%,var(--home-line))!important;
  border-radius:12px!important;
  background:var(--home-surface)!important;
  cursor:pointer!important;
}
body>.home-v23-settings-layer .home-v23-video-file-picker:hover{
  border-color:var(--home-accent)!important;
}
body>.home-v23-settings-layer .home-v23-video-file-picker input[type="file"]{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
body>.home-v23-settings-layer .home-v23-video-file-picker>b{
  flex:0 0 auto!important;
  padding:8px 11px!important;
  border-radius:999px!important;
  background:var(--home-accent)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
}
body>.home-v23-settings-layer .home-v23-video-file-picker>span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--home-text)!important;
  font-size:10px!important;
  font-weight:750!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-state{
  padding:9px 11px!important;
  border-radius:10px!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1.45!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-state.is-loading{
  background:rgba(99,102,241,.10)!important;
  color:#818cf8!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-state.is-success{
  background:rgba(34,197,94,.10)!important;
  color:#22c55e!important;
}
body>.home-v23-settings-layer .home-v23-video-upload-state.is-error{
  background:rgba(244,63,94,.10)!important;
  color:#fb7185!important;
}
body>.home-v23-settings-layer .home-v23-settings-actions button:disabled{
  opacity:.55!important;
  cursor:wait!important;
}

/* ============================================================
   V25.30 · Hero YouTube 자막 (CC)
   ============================================================
   왜 있나
     YouTube 는 아무 지시가 없으면 "보는 사람의 YouTube 계정 설정" 을
     따라갑니다. 그래서 자막을 켜둔 사람에게는 배경 영상에도 자막이
     그대로 떴습니다. 이제 관리자가 기본값을 정하고, 보는 사람은
     이 CC 버튼으로 그 방문 동안만 뒤집을 수 있습니다.

   설정 패널은 열릴 때 document.body 로 옮겨집니다.
   그래서 패널 규칙은 이 파일의 다른 규칙들처럼
   body>.home-v23-settings-layer ... !important 로 적어야 이깁니다.
   ============================================================ */

/* ----- Hero 오른쪽 아래 CC 버튼 ----- */
#page-home .home-v23-hero-controls .home-v23-hero-cc{
  letter-spacing:.06em;
}
#page-home .home-v23-hero-controls .home-v23-hero-cc.is-on{
  border-color:rgba(255,255,255,.62);
  background:rgba(255,255,255,.9);
  color:#0b0d12;
}
#page-home .home-v23-hero-controls .home-v23-hero-cc.is-on:hover{
  background:#fff;
}

/* ----- 설정 패널의 켜고 끄기 한 줄 ----- */
body>.home-v23-settings-layer .home-v23-toggle-row{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:start!important;
  gap:11px!important;
  padding:13px 14px!important;
  border:1px solid var(--home-line)!important;
  border-radius:12px!important;
  cursor:pointer!important;
}
body>.home-v23-settings-layer .home-v23-toggle-row>input[type="checkbox"]{
  width:17px!important;
  height:17px!important;
  min-width:0!important;
  margin:1px 0 0!important;
  padding:0!important;
  border-radius:4px!important;
  accent-color:var(--home-accent)!important;
  cursor:pointer!important;
}
body>.home-v23-settings-layer .home-v23-toggle-row>span{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
}
body>.home-v23-settings-layer .home-v23-toggle-row>span>b{
  color:var(--home-text)!important;
  font-size:11px!important;
  font-weight:850!important;
}
body>.home-v23-settings-layer .home-v23-toggle-row>span>small{
  color:var(--home-muted)!important;
  font-size:9px!important;
  line-height:1.5!important;
}

/* ===== profile-showcase-v23.css ===== */
#page-profiles #jintaMemberCount{min-width:auto;color:var(--profile-muted)!important;font-size:11px;font-weight:800}
#page-profiles .archive-v2-member-card{position:relative;min-width:0;padding:0;border:0;background:transparent;color:var(--profile-ink)!important;cursor:pointer;animation:jvTalentRise .68s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay)}
@keyframes jvTalentRise{from{opacity:0;transform:translateY(34px) scale(.985)}to{opacity:1;transform:none}}
#page-profiles .archive-v2-roster{justify-self:center;max-width:min(720px,65vw);margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow-x:auto;scrollbar-width:none}
#page-profiles .archive-v2-roster::-webkit-scrollbar{display:none}
#page-profiles .archive-v2-roster-item{flex:0 0 36px;width:36px;height:36px;border-radius:50%;filter:grayscale(1);opacity:.38;background:var(--profile-surface);border-color:transparent}
#page-profiles .archive-v2-roster-item span{display:none}
#page-profiles .archive-v2-roster-item.active{filter:none;opacity:1;border-color:var(--profile-accent);transform:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--profile-accent) 16%,transparent)}
@keyframes jvPortraitEnter{from{opacity:0;transform:translate3d(-34px,26px,0) scale(.97)}to{opacity:1;transform:none}}
@keyframes jvCopyEnter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes jvHeroSwitch{from{opacity:.18;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){#page-profiles .archive-v2-roster{max-width:52vw}}
@media(max-width:560px){#page-profiles .archive-v2-roster{display:none}}
@media(prefers-reduced-motion:reduce){#page-profiles *{animation-duration:.001ms!important;animation-delay:0s!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ===== v24-unify.css ===== */
/* ============================================================
   JINHO ARCHIVE v24.04 · HARD UI UNIFY
   기준: HOME / PROFILE / UP RANK
   Legacy green palette is remapped to v23 neutral + pink.
   ============================================================ */
/* 0) Remap the original legacy tokens everywhere. */
:root,html[data-theme="light"]{
  --bg:var(--v23-bg,#f7f6f7)!important;
  --bg2:var(--v23-surface-2,#f2f1f2)!important;
  --panel:var(--v23-surface,#fff)!important;
  --panel2:var(--v23-surface-2,#f2f1f2)!important;
  --line:var(--v23-line,#e7e3e6)!important;
  --text:var(--v23-text,#171619)!important;
  --muted:var(--v23-muted,#7b777d)!important;
  --primary:var(--v23-accent,#ea3f69)!important;
  --accent:var(--v23-accent,#ea3f69)!important;
}
html[data-theme="dark"],body.dark{
  --bg:var(--v23-bg,#0b0c0f)!important;
  --bg2:var(--v23-surface-2,#17191f)!important;
  --panel:var(--v23-surface,#121318)!important;
  --panel2:var(--v23-surface-2,#17191f)!important;
  --line:var(--v23-line,#292b32)!important;
  --text:var(--v23-text,#f5f3f5)!important;
  --muted:var(--v23-muted,#9d99a2)!important;
  --primary:var(--v23-accent,#ff547d)!important;
  --accent:var(--v23-accent,#ff547d)!important;
}
/* 1) Shared editorial shell. */
#page-calendar,#page-activity,#page-stats,#page-live,#page-vod,#page-posters{
  color:var(--v23-text)!important;
}
#page-calendar .v23-page-intro,#page-activity .v23-page-intro,#page-stats .v23-page-intro{
  margin:0 0 28px!important;
  padding:30px 2px 24px!important;
  border-bottom:1px solid var(--v23-line)!important;
  background:transparent!important;
}
#page-calendar .v23-page-intro>span,#page-activity .v23-page-intro>span,#page-stats .v23-page-intro>span{color:var(--v23-accent)!important}
#page-calendar .v23-page-intro h1,#page-activity .v23-page-intro h1,#page-stats .v23-page-intro h1{color:var(--v23-text)!important}
#page-calendar .v23-page-intro p,#page-activity .v23-page-intro p,#page-stats .v23-page-intro p{color:var(--v23-muted)!important}
/* 2) CALENDAR: sidebar is permanently gone, calendar owns the width. */
#page-calendar .portal-side-right,#page-calendar .daily-brief-panel,#page-calendar #applicationPanel,#page-calendar .compact-panel,#page-calendar .mobile-info-tabs{
  display:none!important;
  visibility:hidden!important;
  width:0!important;
  min-width:0!important;
  height:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
#page-calendar .schedule-layout,body.v5-news-open #page-calendar .schedule-layout,body.news-panel-open #page-calendar .schedule-layout,body.memo-panel-open #page-calendar .schedule-layout{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 56px!important;
  transform:none!important;
}
#page-calendar .schedule-layout>.calendar-card{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  transform:none!important;
}
#page-calendar .calendar-card{
  background:var(--v23-surface)!important;
  border:1px solid var(--v23-line)!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
#page-calendar .calendar-head,#page-calendar .filters,#page-calendar .weekday-row,#page-calendar .calendar-footer-note{border-color:var(--v23-line)!important}
#page-calendar .calendar-head{background:transparent!important}
#page-calendar .calendar-kicker{color:var(--v23-accent)!important}
#page-calendar #monthTitle,.month-control h1{color:var(--v23-text)!important}
#page-calendar .month-control p,#page-calendar .calendar-footer-note,#page-calendar .weekday-row{color:var(--v23-muted)!important}
#page-calendar .circle,#page-calendar .head-actions button,#page-calendar .filter{
  background:var(--v23-surface-2)!important;
  border-color:var(--v23-line)!important;
  color:var(--v23-muted)!important;
  box-shadow:none!important;
}
#page-calendar #todayButton{
  background:var(--v23-accent)!important;
  border-color:var(--v23-accent)!important;
  color:#fff!important;
}
#page-calendar .day{
  background:var(--v23-bg)!important;
  border-color:var(--v23-line)!important;
  color:var(--v23-text)!important;
}
#page-calendar .day:hover{background:var(--v23-surface-2)!important}
#page-calendar .day.today{border-color:var(--v23-accent)!important;box-shadow:inset 0 0 0 1px var(--v23-accent)!important}
#page-calendar .date-num{color:var(--v23-text)!important}
#page-calendar .calendar-table-scroll,#page-calendar .calendar-table-inner,#page-calendar .calendar-stage,#page-calendar .calendar-grid{width:100%!important;max-width:none!important}
/* 3) RECENT ACTIVITY: neutral panels + more feed width. */
#page-activity.activity-page{width:100%!important;max-width:1660px!important;margin-inline:auto!important}
#page-activity .activity-layout{
  grid-template-columns:minmax(0,1fr) 250px!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
}
#page-activity .activity-feed-panel,#page-activity .activity-filter-panel,#page-activity .activity-feed-toolbar,#page-activity .activity-feed .activity-card{
  background:var(--v23-surface)!important;
  border-color:var(--v23-line)!important;
  color:var(--v23-text)!important;
  box-shadow:none!important;
}
#page-activity .activity-feed-panel,#page-activity .activity-feed,#page-activity .activity-list{width:100%!important;max-width:none!important;min-width:0!important}
#page-activity .activity-feed-toolbar button{
  background:var(--v23-surface-2)!important;
  border-color:var(--v23-line)!important;
  color:var(--v23-muted)!important;
}
#page-activity .activity-feed .activity-card.is-link:hover,#page-activity .activity-filter-list button:hover,#page-activity .activity-filter-note{
  background:var(--v23-surface-2)!important;
}
#page-activity .activity-filter-list button.active{
  background:var(--v23-accent-soft)!important;
  color:var(--v23-accent)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--v23-accent) 36%,transparent)!important;
}
#page-activity .activity-filter-panel section+section{border-top-color:var(--v23-line)!important}
#page-activity .activity-card h3,#page-activity .activity-card-topline strong{color:var(--v23-text)!important}
#page-activity .activity-card p,#page-activity .activity-card-summary,#page-activity .activity-card-topline>time,#page-activity .activity-filter-note{color:var(--v23-muted)!important}
#page-activity .activity-card.is-unread{
  background:linear-gradient(90deg,var(--v23-accent-soft),var(--v23-surface) 46%)!important;
}
#page-activity .activity-card.is-unread:before{background:var(--v23-accent)!important}
/* 4) STATS: remove the remaining literal green theme. */
#page-stats{
  --ct-line:var(--v23-line)!important;
  --ct-soft:var(--v23-surface-2)!important;
  --ct-panel:var(--v23-surface)!important;
  --ct-ink:var(--v23-text)!important;
  --ct-muted:var(--v23-muted)!important;
  --ct-accent:var(--v23-accent)!important;
  --ct-accent-soft:var(--v23-accent-soft)!important;
}
#page-stats .stats-view-switcher,#page-stats .stats-view-tabs,#page-stats .ct-member-strip,#page-stats .ct-year-nav,#page-stats .ct-month-tabs button,#page-stats .ct-now-button,#page-stats .ct-member-card{
  background:var(--v23-surface)!important;
  border-color:var(--v23-line)!important;
  box-shadow:none!important;
}
#page-stats .stats-view-tabs{background:var(--v23-surface-2)!important}
#page-stats .stats-view-tabs button{color:var(--v23-muted)!important}
#page-stats .stats-view-tabs button.active{
  background:var(--v23-surface)!important;
  color:var(--v23-text)!important;
}
#page-stats .stats-backfill-button,html[data-theme="dark"] #page-stats .stats-backfill-button,#page-stats .ct-manual-edit,#page-stats .ct-day-edit{
  background:var(--v23-surface-2)!important;
  border-color:var(--v23-line)!important;
  color:var(--v23-text)!important;
  box-shadow:none!important;
}
#page-stats .stats-backfill-button:hover,#page-stats .ct-manual-edit:hover,#page-stats .ct-day-edit:hover{
  background:var(--v23-accent-soft)!important;
  border-color:var(--v23-accent)!important;
  color:var(--v23-accent)!important;
  transform:none!important;
}
#page-stats .stats-backfill-icon,html[data-theme="dark"] #page-stats .stats-backfill-icon{
  background:var(--v23-accent-soft)!important;
  color:var(--v23-accent)!important;
}
#page-stats .stats-backfill-button small{color:var(--v23-muted)!important}
#page-stats .ct-member-shortcut.is-all,html[data-theme="dark"] #page-stats .ct-member-shortcut.is-all,#page-stats .ct-month-tabs button.active,html[data-theme="dark"] #page-stats .ct-month-tabs button.active{
  background:var(--v23-accent-soft)!important;
  border-color:var(--v23-accent)!important;
  color:var(--v23-accent)!important;
  box-shadow:none!important;
}
#page-stats .ct-member-shortcut.is-all span,html[data-theme="dark"] #page-stats .ct-member-shortcut.is-all span{
  background:var(--v23-accent)!important;
  color:#fff!important;
}
#page-stats .ct-member-card.is-jump-target{outline-color:var(--v23-accent)!important;box-shadow:0 0 0 5px var(--v23-accent-soft)!important}
#page-stats .ct-live-dot{background:var(--v23-accent)!important;box-shadow:0 0 0 3px var(--v23-accent-soft)!important}
#page-stats .ct-favorite-path,html[data-theme="dark"] #page-stats .ct-favorite-path{stroke:var(--v23-accent)!important;filter:none!important}
#page-stats .ct-favorite-dot,html[data-theme="dark"] #page-stats .ct-favorite-dot{stroke:var(--v23-accent)!important;fill:var(--v23-surface)!important}
#page-stats .ct-favorite-trend-modal header span,html[data-theme="dark"] #page-stats .ct-favorite-trend-modal header span{color:var(--v23-accent)!important}
#page-stats .ct-member-card header,#page-stats .ct-metric-list button{border-color:var(--v23-line)!important}
/* 5) Poster/VOD/Live legacy panels follow the same neutral surface. */
#page-posters .panel,#page-vod .panel,#page-live .panel,#page-posters .poster-archive-card,#page-vod .vod-card,#page-live .live-stream-card{
  border-color:var(--v23-line)!important;
  box-shadow:none!important;
}
@media(max-width:1080px){#page-activity .activity-layout{grid-template-columns:1fr!important}
#page-activity .activity-filter-panel{position:static!important}}
/* ============================================================
   v24.05 · ONE COLOR SYSTEM
   Canonical dark palette = current UP Rank screen.
   Removes leftover olive/green/brown legacy surfaces while
   preserving semantic event/category identity only as small accents.
   ============================================================ */
:root,html[data-theme="light"]{
  --ja-bg:#f6f7f9;
  --ja-surface:#ffffff;
  --ja-surface-2:#f1f3f6;
  --ja-surface-3:#e9edf2;
  --ja-line:#dfe4ea;
  --ja-line-strong:#cfd6df;
  --ja-text:#151921;
  --ja-muted:#788291;
  --ja-soft:#a0a8b3;
  --ja-accent:#ea3f69;
  --ja-accent-soft:rgba(234,63,105,.10);
  --ja-positive:#159b70;
}
html[data-theme="dark"],body.dark{
  --ja-bg:#090d14;
  --ja-surface:#0f1520;
  --ja-surface-2:#131b27;
  --ja-surface-3:#182231;
  --ja-line:#263242;
  --ja-line-strong:#334154;
  --ja-text:#f4f6f9;
  --ja-muted:#8d98a8;
  --ja-soft:#667284;
  --ja-accent:#ff4f7d;
  --ja-accent-soft:rgba(255,79,125,.12);
  --ja-positive:#43d7a4;

  /* Replace old shared green theme variables at the source. */
  --v23-bg:var(--ja-bg)!important;
  --v23-surface:var(--ja-surface)!important;
  --v23-surface-2:var(--ja-surface-2)!important;
  --v23-line:var(--ja-line)!important;
  --v23-text:var(--ja-text)!important;
  --v23-muted:var(--ja-muted)!important;
  --v23-soft-text:var(--ja-soft)!important;
  --v23-accent:var(--ja-accent)!important;
  --v23-accent-soft:var(--ja-accent-soft)!important;
  --bg:var(--ja-bg)!important;
  --bg2:var(--ja-bg)!important;
  --panel:var(--ja-surface)!important;
  --panel2:var(--ja-surface-2)!important;
  --line:var(--ja-line)!important;
  --text:var(--ja-text)!important;
  --muted:var(--ja-muted)!important;
  --primary:var(--ja-accent)!important;
  --accent:var(--ja-accent)!important;
}
html[data-theme="dark"] body,body.dark{
  background:var(--ja-bg)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] body.v23-ui .panel,body.dark.v23-ui .panel{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
/* ---------------- CALENDAR ---------------- */
html[data-theme="dark"] #page-calendar{background:var(--ja-bg)!important;color:var(--ja-text)!important}
html[data-theme="dark"] #page-calendar .calendar-card,html[data-theme="dark"] #page-calendar .calendar-head,html[data-theme="dark"] #page-calendar .filters,html[data-theme="dark"] #page-calendar .weekday-row,html[data-theme="dark"] #page-calendar .calendar-grid,html[data-theme="dark"] #page-calendar .calendar-table-scroll,html[data-theme="dark"] #page-calendar .calendar-table-inner{
  background:var(--ja-bg)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] #page-calendar .calendar-card{
  border-color:var(--ja-line)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-calendar .day{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-calendar .day:hover{background:var(--ja-surface-2)!important}
html[data-theme="dark"] #page-calendar .day.outside{background:#0c111a!important;opacity:.55!important}
html[data-theme="dark"] #page-calendar .day.today{
  border-color:var(--ja-accent)!important;
  box-shadow:inset 0 0 0 1px var(--ja-accent)!important;
}
html[data-theme="dark"] #page-calendar .weekday-row span,html[data-theme="dark"] #page-calendar .date-num{color:var(--ja-muted)!important}
html[data-theme="dark"] #page-calendar .day.today .date-num{color:var(--ja-text)!important}
/* Filters are neutral; active selection uses the site pink accent. */
html[data-theme="dark"] #page-calendar .filter{
  background:var(--ja-surface-2)!important;
  border:1px solid var(--ja-line)!important;
  color:var(--ja-muted)!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-calendar .filter:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] #page-calendar .filter.active{
  background:var(--ja-accent-soft)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 65%,var(--ja-line))!important;
  color:#ff9ab5!important;
  box-shadow:none!important;
}
/* Event blocks no longer fill the whole calendar with old category colors. */
html[data-theme="dark"] #page-calendar .event-pill,html[data-theme="dark"] #page-calendar .mobile-event-item,html[data-theme="dark"] #page-calendar .day-summary-item{
  background:var(--ja-surface-2)!important;
  border:1px solid var(--ja-line)!important;
  border-left:3px solid color-mix(in srgb,var(--event,var(--ja-accent)) 55%,var(--ja-line))!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
html[data-theme="dark"] #page-calendar .event-pill:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
}
html[data-theme="dark"] #page-calendar .event-pill.focused{
  border-color:var(--ja-accent)!important;
  box-shadow:0 0 0 1px var(--ja-accent)!important;
}
html[data-theme="dark"] #page-calendar .event-pill time{color:var(--ja-muted)!important}
html[data-theme="dark"] #page-calendar .event-title{color:var(--ja-text)!important}
html[data-theme="dark"] #page-calendar .event-star{color:var(--ja-soft)!important}
html[data-theme="dark"] #page-calendar .event-star:hover{color:var(--ja-accent)!important}
html[data-theme="dark"] #page-calendar .event-sub-badge,html[data-theme="dark"] #page-calendar .sub-category-badge{
  background:var(--ja-surface-3)!important;
  border:1px solid var(--ja-line-strong)!important;
  color:#bdc6d2!important;
  text-shadow:none!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-calendar .circle,html[data-theme="dark"] #page-calendar .head-actions button{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-calendar #todayButton{
  background:var(--ja-accent)!important;
  border-color:var(--ja-accent)!important;
  color:#fff!important;
}
/* ---------------- RECENT ACTIVITY ---------------- */
html[data-theme="dark"] #page-activity .activity-feed-panel,html[data-theme="dark"] #page-activity .activity-filter-panel,html[data-theme="dark"] #page-activity .activity-feed-toolbar,html[data-theme="dark"] #page-activity .activity-feed .activity-card,html[data-theme="dark"] #page-activity #activityMemberFilters .activity-member-filter-btn,html[data-theme="dark"] #page-activity #activityTypeFilters .activity-type-filter-btn{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-activity .activity-feed .activity-card:hover,html[data-theme="dark"] #page-activity #activityMemberFilters .activity-member-filter-btn:hover,html[data-theme="dark"] #page-activity #activityTypeFilters .activity-type-filter-btn:hover{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line-strong)!important;
}
html[data-theme="dark"] #page-activity #activityMemberFilters .activity-member-filter-btn.active,html[data-theme="dark"] #page-activity #activityTypeFilters .activity-type-filter-btn.active{
  background:var(--ja-accent-soft)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 58%,var(--ja-line))!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] #page-activity .activity-member-filter-avatar,html[data-theme="dark"] #page-activity .activity-filter-type-icon,html[data-theme="dark"] #page-activity .activity-type-icon,html[data-theme="dark"] #page-activity .activity-card[data-tone="post"] .activity-type-icon,html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="post"],html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="live"],html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="off"],html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="title"],html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="category"],html[data-theme="dark"] #page-activity .activity-filter-type-icon[data-tone="mode"]{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
}
html[data-theme="dark"] #page-activity .activity-member-filter-btn.active small{
  background:var(--ja-accent)!important;
  color:#fff!important;
}
html[data-theme="dark"] #page-activity .activity-filter-note{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
}
/* ---------------- STATS MAIN ---------------- */
html[data-theme="dark"] #page-stats{
  --ct-line:var(--ja-line)!important;
  --ct-soft:var(--ja-surface-2)!important;
  --ct-panel:var(--ja-surface)!important;
  --ct-ink:var(--ja-text)!important;
  --ct-muted:var(--ja-muted)!important;
  --ct-accent:var(--ja-accent)!important;
  --ct-accent-soft:var(--ja-accent-soft)!important;
  background:var(--ja-bg)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] #page-stats .stats-view-switcher,html[data-theme="dark"] #page-stats .stats-view-tabs,html[data-theme="dark"] #page-stats .ct-member-strip,html[data-theme="dark"] #page-stats .ct-year-nav,html[data-theme="dark"] #page-stats .ct-month-tabs button,html[data-theme="dark"] #page-stats .ct-now-button,html[data-theme="dark"] #page-stats .ct-member-card,html[data-theme="dark"] #page-stats .ct-detail-panel,html[data-theme="dark"] #page-stats .ct-day-record{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-stats .stats-view-tabs{background:var(--ja-surface-2)!important}
html[data-theme="dark"] #page-stats .stats-view-tabs button,html[data-theme="dark"] #page-stats .ct-month-tabs button,html[data-theme="dark"] #page-stats .ct-now-button{color:var(--ja-muted)!important}
html[data-theme="dark"] #page-stats .stats-view-tabs button:hover,html[data-theme="dark"] #page-stats .ct-month-tabs button:hover,html[data-theme="dark"] #page-stats .ct-now-button:hover{
  background:var(--ja-surface-3)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] #page-stats .stats-view-tabs button.active,html[data-theme="dark"] #page-stats .ct-month-tabs button.active,html[data-theme="dark"] #page-stats .ct-member-shortcut.is-all{
  background:var(--ja-accent-soft)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 62%,var(--ja-line))!important;
  color:#ff9ab5!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-stats .ct-member-shortcut.is-all span{
  background:var(--ja-accent)!important;
  color:#fff!important;
}
html[data-theme="dark"] #page-stats .ct-member-card header,html[data-theme="dark"] #page-stats .ct-metric-list button,html[data-theme="dark"] #page-stats .ct-detail-summary>*,html[data-theme="dark"] #page-stats .ct-day-record{
  border-color:var(--ja-line)!important;
}
html[data-theme="dark"] #page-stats .ct-metric-list button:hover{background:var(--ja-surface-2)!important}
html[data-theme="dark"] #page-stats .ct-member-card.is-jump-target{
  outline-color:var(--ja-accent)!important;
  box-shadow:0 0 0 5px var(--ja-accent-soft)!important;
}
html[data-theme="dark"] #page-stats .ct-live-dot{
  background:var(--ja-accent)!important;
  box-shadow:0 0 0 3px var(--ja-accent-soft)!important;
}
html[data-theme="dark"] #page-stats .stats-backfill-button,html[data-theme="dark"] #page-stats .stats-post-backfill-button,html[data-theme="dark"] #page-stats .ct-manual-edit,html[data-theme="dark"] #page-stats .ct-day-edit,html[data-theme="dark"] #startStatsBackfill[data-action="close"]{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #page-stats .stats-backfill-button:hover,html[data-theme="dark"] #page-stats .stats-post-backfill-button:hover,html[data-theme="dark"] #page-stats .ct-manual-edit:hover,html[data-theme="dark"] #page-stats .ct-day-edit:hover,html[data-theme="dark"] #startStatsBackfill[data-action="close"]:hover{
  background:var(--ja-accent-soft)!important;
  border-color:var(--ja-accent)!important;
  color:#ff9ab5!important;
}
html[data-theme="dark"] #page-stats .stats-backfill-icon,html[data-theme="dark"] #page-stats .stats-post-backfill-button .stats-backfill-icon{
  background:var(--ja-accent-soft)!important;
  color:var(--ja-accent)!important;
}
/* ---------------- STATS PORTAL MODALS ----------------
   These are appended to <body>, so #page-stats selectors never reached them.
   That is why the old green modal survived the earlier unification pass. */
html[data-theme="dark"] .ct-trend-backdrop[data-stat-trend-portal]{
  --ct-line:var(--ja-line)!important;
  --ct-soft:var(--ja-surface-2)!important;
  --ct-panel:var(--ja-surface)!important;
  --ct-ink:var(--ja-text)!important;
  --ct-muted:var(--ja-muted)!important;
  --ct-accent:var(--ja-accent)!important;
  --ct-accent-soft:var(--ja-accent-soft)!important;
  background:rgba(3,7,12,.80)!important;
  backdrop-filter:blur(8px)!important;
}
html[data-theme="dark"] .ct-trend-backdrop[data-stat-trend-portal] .ct-trend-modal,html[data-theme="dark"] .stats-backfill-modal,html[data-theme="dark"] .stats-manual-modal{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.46)!important;
}
html[data-theme="dark"] .ct-trend-backdrop[data-stat-trend-portal] .ct-trend-summary>span,html[data-theme="dark"] .stats-backfill-notice,html[data-theme="dark"] .stats-backfill-progress,html[data-theme="dark"] .stats-manual-hint,html[data-theme="dark"] .stats-manual-modal input,html[data-theme="dark"] .stats-manual-modal select{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] .ct-favorite-line,html[data-theme="dark"] .ct-metric-line{
  background:var(--ja-bg)!important;
  border-color:var(--ja-line)!important;
}
html[data-theme="dark"] .ct-favorite-grid line{stroke:rgba(135,151,171,.18)!important}
html[data-theme="dark"] .ct-favorite-path,html[data-theme="dark"] .ct-metric-line .ct-favorite-path{
  stroke:var(--ja-accent)!important;
  filter:drop-shadow(0 2px 7px rgba(255,79,125,.18))!important;
}
html[data-theme="dark"] .ct-favorite-dot,html[data-theme="dark"] .ct-metric-line .ct-favorite-dot{
  fill:var(--ja-surface)!important;
  stroke:var(--ja-accent)!important;
}
html[data-theme="dark"] .ct-favorite-trend-modal header span,html[data-theme="dark"] .ct-line-trend-modal header span{color:var(--ja-accent)!important}
html[data-theme="dark"] .ct-favorite-value{
  fill:var(--ja-text)!important;
  stroke:var(--ja-surface)!important;
  stroke-width:4px!important;
  font-size:11.5px!important;
  font-weight:850!important;
  letter-spacing:-.035em!important;
}
html[data-theme="dark"] .ct-favorite-month{fill:var(--ja-muted)!important}
html[data-theme="dark"] .ct-trend-close{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
}
html[data-theme="dark"] .ct-trend-close:hover{
  color:var(--ja-text)!important;
  border-color:var(--ja-line-strong)!important;
}
/* ---------------- LIVE / VOD / POSTER ---------------- */
html[data-theme="dark"] #page-live .panel,html[data-theme="dark"] #page-vod .panel,html[data-theme="dark"] #page-posters .panel,html[data-theme="dark"] #page-posters .poster-archive-card,html[data-theme="dark"] #page-live .live-stream-card,html[data-theme="dark"] #page-vod .vod-card{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
/* Shared old-page text hierarchy. */
html[data-theme="dark"] #page-calendar :is(.helper,.calendar-footer-note,.month-control p),html[data-theme="dark"] #page-activity :is(.activity-card p,.activity-card-summary,.activity-card time,.activity-filter-note),html[data-theme="dark"] #page-stats :is(.ct-member-id small,.ct-metric-list span,.ct-grid-head p,.stats-backfill-button small){
  color:var(--ja-muted)!important;
}
/* ============================================================
   v24.06 · CALENDAR CATEGORY COLOR VISIBILITY
   Keep the v24 neutral/up-rank visual system, but restore clear
   semantic category colors to filters and schedule items.
   ============================================================ */
/* Category chips: each category gets its own visible dot/tint.
   The pink accent still indicates "selected", so site UI language stays unified. */
#page-calendar .filter{
  position:relative!important;
  padding-left:22px!important;
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--filter,#788291) 11%,var(--ja-surface-2)),
      color-mix(in srgb,var(--filter,#788291) 6%,var(--ja-surface-2))
    )!important;
  border-color:color-mix(in srgb,var(--filter,#788291) 48%,var(--ja-line))!important;
  color:color-mix(in srgb,var(--filter,#788291) 52%,var(--ja-text))!important;
}
#page-calendar .filter::before{
  content:""!important;
  position:absolute!important;
  left:8px!important;
  top:50%!important;
  width:7px!important;
  height:7px!important;
  border-radius:999px!important;
  transform:translateY(-50%)!important;
  background:var(--filter,#788291)!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--filter,#788291) 20%,transparent)!important;
}
#page-calendar .filter:hover{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--filter,#788291) 17%,var(--ja-surface-3)),
      color-mix(in srgb,var(--filter,#788291) 9%,var(--ja-surface-3))
    )!important;
  border-color:color-mix(in srgb,var(--filter,#788291) 66%,var(--ja-line-strong))!important;
  color:var(--ja-text)!important;
}
#page-calendar .filter.active{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--filter,#788291) 26%,var(--ja-surface-2)),
      color-mix(in srgb,var(--filter,#788291) 15%,var(--ja-surface-2))
    )!important;
  border-color:color-mix(in srgb,var(--filter,#788291) 82%,var(--ja-line))!important;
  color:var(--ja-text)!important;
  box-shadow:
    inset 0 -2px 0 var(--ja-accent),
    0 0 0 1px color-mix(in srgb,var(--filter,#788291) 18%,transparent)!important;
}
#page-calendar .filter.active::before{
  width:8px!important;
  height:8px!important;
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--filter,#788291) 28%,transparent),
    0 0 10px color-mix(in srgb,var(--filter,#788291) 32%,transparent)!important;
}
/* Calendar event blocks: neutral card base + unmistakable main-category accent. */
#page-calendar .event-pill,#page-calendar .day-summary-item,#page-calendar .mobile-event-item{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 20%,var(--ja-surface-2)) 0%,
      color-mix(in srgb,var(--event,var(--ja-accent)) 9%,var(--ja-surface-2)) 42%,
      var(--ja-surface-2) 100%
    )!important;
  border-color:color-mix(in srgb,var(--event,var(--ja-accent)) 30%,var(--ja-line))!important;
  color:var(--ja-text)!important;
}
#page-calendar .event-pill:not(.multi-day),#page-calendar .event-pill.range-start,#page-calendar .event-pill.range-single,#page-calendar .event-pill.range-week-start,#page-calendar .day-summary-item{
  border-left:4px solid var(--event,var(--ja-accent))!important;
}
#page-calendar .event-pill.multi-day.range-middle,#page-calendar .event-pill.multi-day.range-end{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 16%,var(--ja-surface-2)),
      color-mix(in srgb,var(--event,var(--ja-accent)) 7%,var(--ja-surface-2))
    )!important;
  border-top-color:color-mix(in srgb,var(--event,var(--ja-accent)) 44%,var(--ja-line))!important;
  border-bottom-color:color-mix(in srgb,var(--event,var(--ja-accent)) 44%,var(--ja-line))!important;
}
#page-calendar .event-pill:hover,#page-calendar .day-summary-item:hover,#page-calendar .mobile-event-item:hover{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 27%,var(--ja-surface-3)) 0%,
      color-mix(in srgb,var(--event,var(--ja-accent)) 13%,var(--ja-surface-3)) 48%,
      var(--ja-surface-3) 100%
    )!important;
  border-color:color-mix(in srgb,var(--event,var(--ja-accent)) 52%,var(--ja-line-strong))!important;
}
/* Time is a small second category cue without making the whole event loud. */
#page-calendar .event-pill time,#page-calendar .day-summary-time{
  color:color-mix(in srgb,var(--event,var(--ja-accent)) 72%,var(--ja-text))!important;
  font-weight:900!important;
}
#page-calendar .event-title{
  color:var(--ja-text)!important;
}
/* Small-category badge uses its own --sub color again. */
#page-calendar .event-sub-badge,#page-calendar .sub-category-badge{
  background:color-mix(in srgb,var(--sub,var(--ja-accent)) 18%,var(--ja-surface-3))!important;
  border:1px solid color-mix(in srgb,var(--sub,var(--ja-accent)) 62%,var(--ja-line-strong))!important;
  color:color-mix(in srgb,var(--sub,var(--ja-accent)) 68%,var(--ja-text))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--sub,var(--ja-accent)) 8%,transparent)!important;
}
/* Keep filter-dim behavior readable: non-matching items fade, matching category color stays vivid. */
#page-calendar .event-pill.category-focused{
  opacity:1!important;
  filter:none!important;
}
#page-calendar .event-pill.category-dimmed{
  opacity:.23!important;
  filter:saturate(.45)!important;
}
/* Mobile has its own vertical accent element. */
#page-calendar .mobile-event-accent{
  background:var(--event,var(--ja-accent))!important;
  box-shadow:0 0 12px color-mix(in srgb,var(--event,var(--ja-accent)) 28%,transparent)!important;
}
/* Light theme: avoid category colors becoming too pale on white. */
html[data-theme="light"] #page-calendar .filter{
  color:color-mix(in srgb,var(--filter,#64748b) 72%,#17202b)!important;
}
html[data-theme="light"] #page-calendar .event-pill,html[data-theme="light"] #page-calendar .day-summary-item,html[data-theme="light"] #page-calendar .mobile-event-item{
  border-color:color-mix(in srgb,var(--event,var(--ja-accent)) 42%,var(--ja-line))!important;
}
html[data-theme="light"] #page-calendar .event-pill time,html[data-theme="light"] #page-calendar .day-summary-time{
  color:color-mix(in srgb,var(--event,var(--ja-accent)) 78%,#18212b)!important;
}
/* ============================================================
   v24.07 · CALENDAR POPOVER + MONTHLY HISTORY COLOR UNIFY
   Remove the last legacy olive/green surfaces from calendar
   overlays. Semantic category colors remain only as small cues.
   ============================================================ */
/* ---------- Event detail popover ---------- */
html[data-theme="dark"] .event-popover,body.dark .event-popover{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:0 26px 78px rgba(0,0,0,.52)!important;
}
html[data-theme="dark"] .event-popover-close{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .event-popover-close:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] .event-popover-date{color:var(--ja-muted)!important}
html[data-theme="dark"] .event-popover h2{color:var(--ja-text)!important}
html[data-theme="dark"] .event-popover-tags span{
  background:color-mix(in srgb,var(--tag,var(--ja-accent)) 13%,var(--ja-surface-2))!important;
  border-color:color-mix(in srgb,var(--tag,var(--ja-accent)) 58%,var(--ja-line))!important;
  color:color-mix(in srgb,var(--tag,var(--ja-accent)) 48%,var(--ja-text))!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .event-popover-memo{
  background:var(--ja-surface-2)!important;
  border:1px solid var(--ja-line)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] .event-popover-participants img{
  background:var(--ja-surface-2)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 62%,var(--ja-line))!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .event-popover-participants span{color:var(--ja-muted)!important}
html[data-theme="dark"] .event-popover-image{
  background:var(--ja-bg)!important;
  border-color:var(--ja-line)!important;
}
html[data-theme="dark"] .event-popover-notice{
  background:var(--ja-surface-2)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 48%,var(--ja-line))!important;
  box-shadow:inset 3px 0 0 var(--ja-accent)!important;
}
html[data-theme="dark"] .event-popover-notice small,html[data-theme="dark"] .event-popover-notice a{color:#ff84a4!important}
html[data-theme="dark"] .event-popover-notice strong{color:var(--ja-text)!important}
html[data-theme="dark"] .event-popover-notice p{color:var(--ja-muted)!important}
html[data-theme="dark"] .event-popover-actions{
  background:color-mix(in srgb,var(--ja-surface) 94%,transparent)!important;
  border-top-color:var(--ja-line)!important;
}
html[data-theme="dark"] .event-popover-actions .btn{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .event-popover-actions .btn:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
}
html[data-theme="dark"] .event-popover-actions .star-action.active{
  background:var(--ja-accent-soft)!important;
  border-color:var(--ja-accent)!important;
  color:#ff9ab5!important;
}
@media(max-width:760px){html[data-theme="dark"] .event-popover-layer{
    background:rgba(3,7,12,.74)!important;
    backdrop-filter:blur(8px)!important;
  }
html[data-theme="dark"] .event-popover-grab{
    background:color-mix(in srgb,var(--ja-muted) 48%,transparent)!important;
  }}
/* Legacy/full detail dialog uses the same palette if it is opened anywhere. */
html[data-theme="dark"] #detailModal.modal-layer,html[data-theme="dark"] .portal-modal-layer{
  background:rgba(3,7,12,.76)!important;
  backdrop-filter:blur(8px)!important;
}
html[data-theme="dark"] .schedule-detail-modal,html[data-theme="dark"] .day-summary-modal,html[data-theme="dark"] .portal-modal{
  --detail-soft:var(--ja-surface-2)!important;
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.52)!important;
}
html[data-theme="dark"] .schedule-detail-modal>.close,html[data-theme="dark"] .day-summary-modal>.close,html[data-theme="dark"] .portal-modal>.close{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .detail-heading,html[data-theme="dark"] .day-summary-head{border-color:var(--ja-line)!important}
html[data-theme="dark"] .detail-heading:before{background:var(--ja-accent)!important}
html[data-theme="dark"] .event-notice-card{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .event-notice-card{box-shadow:inset 3px 0 0 var(--ja-accent)!important}
html[data-theme="dark"] .event-notice-mark{background:var(--ja-accent)!important;color:#fff!important}
html[data-theme="dark"] .event-notice-kicker,html[data-theme="dark"] .event-notice-main a{color:#ff84a4!important}
html[data-theme="dark"] .event-notice-main a{
  background:transparent!important;
  border-color:color-mix(in srgb,var(--ja-accent) 46%,var(--ja-line))!important;
}
html[data-theme="dark"] .detail-actions{
  background:color-mix(in srgb,var(--ja-surface) 94%,transparent)!important;
  border-color:var(--ja-line)!important;
}
html[data-theme="dark"] .detail-actions .btn{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] .detail-actions .star-action.active{
  background:var(--ja-accent-soft)!important;
  border-color:var(--ja-accent)!important;
  color:#ff9ab5!important;
}
/* ---------- Monthly history ---------- */
html[data-theme="dark"] .monthly-history-layer{
  background:rgba(3,7,12,.78)!important;
  backdrop-filter:blur(9px)!important;
}
html[data-theme="dark"] .monthly-history-panel{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.54)!important;
}
html[data-theme="dark"] .monthly-history-head{
  background:var(--ja-surface)!important;
  border-bottom-color:var(--ja-line)!important;
}
html[data-theme="dark"] .monthly-history-head h2{color:var(--ja-text)!important}
html[data-theme="dark"] .monthly-history-head button{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .monthly-history-head button:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
  color:var(--ja-text)!important;
}
html[data-theme="dark"] .monthly-history-scroll{
  background:var(--ja-surface)!important;
  scrollbar-color:color-mix(in srgb,var(--ja-muted) 42%,transparent) transparent!important;
}
html[data-theme="dark"] .mh-section,html[data-theme="dark"] .mh-summary-card,html[data-theme="dark"] .mh-broadcast-card,html[data-theme="dark"] .mh-top-row{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .mh-section-title strong,html[data-theme="dark"] .mh-summary-card strong,html[data-theme="dark"] .mh-broadcast-total strong,html[data-theme="dark"] .mh-next-line b,html[data-theme="dark"] .mh-top-copy b{color:var(--ja-text)!important}
html[data-theme="dark"] .mh-section-title span,html[data-theme="dark"] .mh-summary-card span,html[data-theme="dark"] .mh-broadcast-total span,html[data-theme="dark"] .mh-broadcast-note,html[data-theme="dark"] .mh-next-line,html[data-theme="dark"] .mh-stack-label,html[data-theme="dark"] .mh-legend-chip,html[data-theme="dark"] .mh-top-copy small{color:var(--ja-muted)!important}
html[data-theme="dark"] .mh-next-line,html[data-theme="dark"] .mh-daily-chart{border-color:var(--ja-line)!important}
html[data-theme="dark"] .mh-broadcast-card{
  border-color:color-mix(in srgb,var(--ja-accent) 45%,var(--ja-line))!important;
  box-shadow:inset 3px 0 0 var(--ja-accent)!important;
}
html[data-theme="dark"] .mh-daily-bar{
  background:var(--ja-accent)!important;
  opacity:.88!important;
}
html[data-theme="dark"] .mh-daily-bar.zero{
  background:var(--ja-line-strong)!important;
  opacity:.28!important;
}
html[data-theme="dark"] .mh-change.up{color:#66d8b0!important}
html[data-theme="dark"] .mh-change.down{color:#ff7799!important}
html[data-theme="dark"] .mh-change.same{color:var(--ja-muted)!important}
html[data-theme="dark"] .mh-stack{
  background:var(--ja-bg)!important;
  border:1px solid var(--ja-line)!important;
}
/* Category segments keep their semantic --seg colors; only the container is neutral. */
html[data-theme="dark"] .mh-stack-seg{
  opacity:.9!important;
  border-top-color:rgba(255,255,255,.12)!important;
}
html[data-theme="dark"] .mh-legend-chip{
  background:var(--ja-bg)!important;
  border-color:var(--ja-line)!important;
}
html[data-theme="dark"] .mh-top-row:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
}
html[data-theme="dark"] .mh-top-rank{
  background:var(--ja-surface-3)!important;
  color:var(--ja-text)!important;
  border:1px solid var(--ja-line-strong)!important;
}
html[data-theme="dark"] .mh-top-heart{color:#ff7e9f!important}
html[data-theme="dark"] .mh-empty{
  background:var(--ja-bg)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
}
/* Light mode receives the same neutral family instead of legacy green. */
html[data-theme="light"] .event-popover,html[data-theme="light"] .monthly-history-panel,html[data-theme="light"] .schedule-detail-modal,html[data-theme="light"] .day-summary-modal{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
}
html[data-theme="light"] .event-popover-memo,html[data-theme="light"] .event-popover-notice,html[data-theme="light"] .monthly-history-head,html[data-theme="light"] .mh-section,html[data-theme="light"] .mh-summary-card,html[data-theme="light"] .mh-broadcast-card,html[data-theme="light"] .mh-top-row{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
}
/* ============================================================
   v24.08 · SOOP CHAT ACTIVITY
   Chat stays inside the same neutral UP-rank color system.
   Cyan is used only as a semantic signal, not as a panel theme.
   ============================================================ */
#page-activity .activity-card[data-tone="chat"] .activity-type-icon,#page-activity .activity-filter-type-icon[data-tone="chat"]{
  color:#67d8ff!important;
  background:color-mix(in srgb,#67d8ff 9%,var(--ja-surface-2))!important;
  border-color:color-mix(in srgb,#67d8ff 30%,var(--ja-line))!important;
}
#page-activity .activity-card[data-tone="chat"] .activity-kind[data-tone="chat"]{
  color:#67d8ff!important;
}
#page-activity .activity-card[data-tone="chat"]{
  background:linear-gradient(90deg,color-mix(in srgb,#67d8ff 4%,var(--ja-surface)) 0%,var(--ja-surface) 34%)!important;
}
#page-activity .activity-type-filter-btn[data-activity-type="chat"].active{
  background:color-mix(in srgb,#67d8ff 8%,var(--ja-accent-soft))!important;
  border-color:color-mix(in srgb,#67d8ff 35%,var(--ja-accent))!important;
}
html[data-theme="light"] #page-activity .activity-card[data-tone="chat"] .activity-type-icon,html[data-theme="light"] #page-activity .activity-filter-type-icon[data-tone="chat"]{
  color:#087ca7!important;
  background:color-mix(in srgb,#0ea5d9 8%,#fff)!important;
  border-color:color-mix(in srgb,#0ea5d9 30%,#d7dce4)!important;
}
/* 2026-08-18 · 최근 활동 채팅 그룹 UI */
#page-activity .activity-chat-section{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
  width:100%;
  margin-top:5px;
}
#page-activity .activity-chat-host{
  font-size:12px;
  font-weight:700;
  letter-spacing:-.01em;
  color:var(--ja-muted,var(--v23-muted,#9aa4b2))!important;
}
#page-activity .activity-chat-stack{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:11px 13px;
  border:1px solid color-mix(in srgb,#67d8ff 17%,var(--ja-line,var(--v23-line,#2d3946)))!important;
  border-radius:13px;
  background:color-mix(in srgb,#67d8ff 6%,var(--ja-surface-2,var(--v23-surface-2,#18212b)))!important;
}
#page-activity .activity-chat-line{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:10px;
  align-items:start;
}
#page-activity .activity-chat-line time{
  font-size:12px;
  line-height:1.5;
  font-weight:700;
  white-space:nowrap;
  color:color-mix(in srgb,#67d8ff 62%,var(--ja-muted,var(--v23-muted,#93a0ad)))!important;
}
#page-activity .activity-chat-line span{
  min-width:0;
  font-size:13px;
  line-height:1.5;
  white-space:pre-wrap;
  word-break:break-word;
  color:var(--ja-text,var(--v23-text,#eef4ff))!important;
}
#page-activity .activity-card[data-tone="chat"] .activity-card-actions{align-self:flex-start}
html[data-theme="light"] #page-activity .activity-chat-stack{
  background:color-mix(in srgb,#0ea5d9 5%,#fff)!important;
  border-color:color-mix(in srgb,#0ea5d9 18%,#d7dce4)!important;
}
html[data-theme="light"] #page-activity .activity-chat-line time{
  color:color-mix(in srgb,#087ca7 65%,#7b8794)!important;
}
@media (max-width:760px){#page-activity .activity-chat-stack{padding:10px 11px}
#page-activity .activity-chat-line{grid-template-columns:44px minmax(0,1fr);gap:8px}
#page-activity .activity-chat-line time,#page-activity .activity-chat-line span{font-size:12px}}
/* ========================================================================== */
/* v24.10 · ACTIVITY MODERN FEED                                              */
/* 버컴퍼니 팬사이트 계열의 여백감 + 진호 아카이브 컬러 시스템을 결합한 피드 */
/* ========================================================================== */
#page-activity{
  --activity-bg:#0b0f16;
  --activity-surface:#0f1520;
  --activity-surface-2:#121a26;
  --activity-line:#242f3d;
  --activity-line-soft:rgba(148,163,184,.13);
  --activity-text:#f2f5f9;
  --activity-muted:#8895a5;
  --activity-accent:#ff4f7d;
  --activity-purple:#a78bfa;
  --activity-chat:#4ecbff;
  --activity-live:#64dca0;
  --activity-post:#9c8cff;
  --activity-glow:rgba(255,79,125,.16);
}
#page-activity .activity-modern-intro{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
}
#page-activity .activity-modern-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  margin-bottom:7px;
  padding:9px 13px;
  border:1px solid var(--activity-line);
  border-radius:999px;
  background:rgba(15,21,32,.72);
  color:var(--activity-muted);
  font-size:12px;
  font-weight:800;
  backdrop-filter:blur(14px);
}
#page-activity .activity-modern-live i{
  width:7px;height:7px;border-radius:999px;background:var(--activity-live);
  box-shadow:0 0 0 4px rgba(100,220,160,.09),0 0 14px rgba(100,220,160,.42);
}
#page-activity .activity-modern-status{
  gap:8px!important;
  margin:0 0 14px!important;
}
#page-activity .activity-modern-status span{
  padding:7px 11px!important;
  border:1px solid var(--activity-line)!important;
  border-radius:999px!important;
  background:var(--activity-surface)!important;
  color:var(--activity-muted)!important;
  box-shadow:none!important;
}
#page-activity .activity-type-dock{
  display:flex;
  align-items:center;
  gap:18px;
  width:100%;
  margin:0 0 14px;
  padding:11px 14px;
  border:1px solid var(--activity-line);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(18,26,38,.94),rgba(13,19,29,.94));
  box-shadow:0 18px 55px rgba(0,0,0,.13);
}
#page-activity .activity-type-dock-label{
  display:flex;flex-direction:column;gap:1px;min-width:52px;padding-left:2px;
}
#page-activity .activity-type-dock-label span,#page-activity .activity-side-head span{
  color:var(--activity-accent);font-size:9px;font-weight:900;letter-spacing:.18em;
}
#page-activity .activity-type-dock-label strong{font-size:13px;color:var(--activity-text)}
#page-activity .activity-type-filter-strip{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  min-width:0;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-height:38px!important;
  gap:8px!important;
  padding:6px 11px!important;
  border:1px solid var(--activity-line)!important;
  border-radius:11px!important;
  background:#101722!important;
  color:#b5c0cd!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn:hover{
  transform:translateY(-1px);
  background:#151e2b!important;
  border-color:#354456!important;
  color:var(--activity-text)!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn.active{
  background:linear-gradient(135deg,rgba(255,79,125,.16),rgba(167,139,250,.12))!important;
  border-color:rgba(255,79,125,.48)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 8px 28px rgba(255,79,125,.08);
}
#page-activity .activity-type-filter-strip .activity-filter-type-icon{
  width:25px!important;height:25px!important;flex-basis:25px!important;border-radius:7px!important;
  background:#162131!important;border:0!important;color:#91a1b4!important;
}
#page-activity .activity-type-filter-strip .activity-filter-broadcast-icon{overflow:hidden!important;padding:0!important}
#page-activity .activity-type-filter-strip .activity-type-filter-btn>span:last-child{
  display:flex!important;align-items:center!important;gap:6px!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn strong{font-size:12px!important;color:inherit!important;white-space:nowrap}
#page-activity .activity-type-filter-strip .activity-type-filter-btn small{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#1a2431;color:#758396!important;font-size:10px!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn.active small{background:rgba(255,255,255,.09);color:#dbe3ec!important}
#page-activity .activity-modern-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 236px!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  align-items:start!important;
}
#page-activity .activity-modern-feed-panel{
  min-width:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--activity-line)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#0f1520 0%,#0d131d 100%)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.16)!important;
}
#page-activity .activity-modern-toolbar{
  min-height:58px;
  padding:11px 14px!important;
  border:0!important;
  border-bottom:1px solid var(--activity-line)!important;
  background:rgba(12,18,27,.88)!important;
}
#page-activity .activity-modern-toolbar>div{gap:7px!important}
#page-activity .activity-modern-toolbar strong{
  color:#9ba8b8!important;font-size:12px!important;font-weight:900!important;
}
#page-activity .activity-modern-toolbar button{
  min-height:34px!important;
  padding:7px 10px!important;
  border:1px solid var(--activity-line)!important;
  border-radius:9px!important;
  background:#111925!important;
  color:#9aa7b6!important;
  font-size:11px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
#page-activity .activity-modern-toolbar button:hover{background:#172231!important;color:#fff!important;border-color:#354456!important}
#page-activity .activity-modern-toolbar .activity-delete-all{
  background:rgba(255,79,125,.08)!important;border-color:rgba(255,79,125,.25)!important;color:#f790ab!important;
}
/* Timeline body */
#page-activity .activity-feed{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  padding:0 14px 0 18px!important;
  background:transparent!important;
}
#page-activity .activity-feed::before{
  content:"";
  position:absolute;
  left:34px;
  top:25px;
  bottom:25px;
  width:1px;
  background:linear-gradient(180deg,transparent,var(--activity-line) 4%,var(--activity-line) 96%,transparent);
  pointer-events:none;
}
#page-activity .activity-feed .activity-card{
  position:relative!important;
  z-index:1;
  display:grid!important;
  grid-template-columns:34px 44px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:flex-start!important;
  min-height:76px!important;
  padding:17px 4px!important;
  border:0!important;
  border-bottom:1px solid var(--activity-line-soft)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transition:background .16s ease!important;
}
#page-activity .activity-feed .activity-card:last-child{border-bottom:0!important}
#page-activity .activity-feed .activity-card:hover{
  background:linear-gradient(90deg,rgba(255,255,255,.025),transparent 72%)!important;
}
#page-activity .activity-feed .activity-card.is-unread{
  background:linear-gradient(90deg,rgba(255,79,125,.055),transparent 70%)!important;
}
#page-activity .activity-feed .activity-card.is-unread::before{
  left:-18px!important;top:16px!important;bottom:16px!important;width:2px!important;border-radius:99px!important;background:var(--activity-accent)!important;
}
#page-activity .activity-feed .activity-type-icon{
  position:relative!important;
  z-index:2!important;
  display:grid!important;place-items:center!important;
  width:28px!important;height:28px!important;
  margin:4px 0 0 2px!important;
  border:1px solid #283648!important;
  border-radius:8px!important;
  background:#152031!important;
  color:#7f91a5!important;
  box-shadow:0 0 0 5px #0f1520!important;
}
#page-activity .activity-feed .activity-card[data-tone="chat"] .activity-type-icon{
  background:rgba(78,203,255,.11)!important;border-color:rgba(78,203,255,.22)!important;color:var(--activity-chat)!important;
}
#page-activity .activity-feed .activity-card[data-tone="live"] .activity-type-icon{
  background:rgba(100,220,160,.10)!important;border-color:rgba(100,220,160,.20)!important;color:var(--activity-live)!important;
}
#page-activity .activity-feed .activity-card[data-tone="post"] .activity-type-icon{
  background:rgba(167,139,250,.11)!important;border-color:rgba(167,139,250,.22)!important;color:var(--activity-post)!important;
}
#page-activity .activity-feed .activity-avatar{
  width:40px!important;height:40px!important;
  margin-top:0!important;
  border:1px solid #344154!important;
  border-radius:50%!important;
  background:#111927!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.018)!important;
}
#page-activity .activity-feed .activity-card-copy{
  min-width:0!important;
  padding:0 8px 0 0!important;
}
#page-activity .activity-card-topline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:0!important;
  margin:0!important;
}
#page-activity .activity-card-identity{
  display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex-wrap:wrap!important;
}
#page-activity .activity-member-name{
  color:var(--activity-text)!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
}
#page-activity .activity-kind{
  display:inline-flex!important;align-items:center!important;
  min-height:21px!important;padding:0 7px!important;
  border-radius:6px!important;
  background:#172131!important;
  color:#8fa0b4!important;
  font-size:10px!important;font-weight:900!important;
}
#page-activity .activity-kind[data-tone="chat"]{background:rgba(78,203,255,.10)!important;color:var(--activity-chat)!important}
#page-activity .activity-kind[data-tone="live"]{background:rgba(100,220,160,.10)!important;color:var(--activity-live)!important}
#page-activity .activity-kind[data-tone="post"]{background:rgba(167,139,250,.11)!important;color:#b5a6ff!important}
#page-activity .activity-card-topline>time{
  flex:0 0 auto!important;
  color:#697789!important;
  font-size:11px!important;
  font-variant-numeric:tabular-nums;
}
#page-activity .activity-new-badge{
  padding:2px 6px!important;border-radius:999px!important;background:rgba(255,79,125,.15)!important;color:#ff8ba9!important;font-size:9px!important;font-style:normal!important;
}
#page-activity .activity-card-bottomline{
  display:flex!important;align-items:flex-start!important;gap:8px!important;
  margin-top:6px!important;padding:0!important;min-width:0!important;
}
#page-activity .activity-card-summary{
  color:#a8b3c0!important;
  font-size:12px!important;
  line-height:1.55!important;
  white-space:pre-wrap!important;
}
/* Grouped chat: no nested rectangle; editorial list */
#page-activity .activity-chat-section{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  margin-top:6px!important;
}
#page-activity .activity-chat-host{
  color:#6f7e90!important;
  font-size:11px!important;
  font-weight:700!important;
}
#page-activity .activity-chat-stack{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  padding:2px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#page-activity .activity-chat-line{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:baseline!important;
  min-width:0!important;
}
#page-activity .activity-chat-line time{
  color:#748296!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.55!important;
  font-variant-numeric:tabular-nums;
  white-space:nowrap!important;
}
#page-activity .activity-chat-line span{
  min-width:0!important;
  color:#dce3eb!important;
  font-size:13px!important;
  line-height:1.55!important;
  word-break:break-word!important;
  white-space:pre-wrap!important;
}
#page-activity .activity-card-actions{
  align-self:flex-start!important;
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
  margin-top:0!important;
  opacity:0;
  transform:translateX(4px);
  transition:opacity .16s ease,transform .16s ease!important;
}
#page-activity .activity-card:hover .activity-card-actions,#page-activity .activity-card:focus-within .activity-card-actions{opacity:1;transform:none}
#page-activity .activity-card-open,#page-activity .activity-event-delete{
  border:1px solid transparent!important;
  background:transparent!important;
  color:#66778a!important;
  border-radius:7px!important;
}
#page-activity .activity-event-delete{font-size:10px!important;padding:4px 6px!important}
#page-activity .activity-event-delete:hover{background:rgba(255,79,125,.09)!important;color:#ff789b!important;border-color:rgba(255,79,125,.16)!important}
#page-activity .activity-card-open:hover{background:#162131!important;color:#d8e0e9!important}
/* Member rail */
#page-activity .activity-modern-member-panel{
  position:sticky!important;
  top:86px!important;
  padding:15px!important;
  border:1px solid var(--activity-line)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#101722,#0e141e)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.13)!important;
}
#page-activity .activity-side-head{margin-bottom:12px}
#page-activity .activity-side-head h3{margin:2px 0 0!important;color:var(--activity-text)!important;font-size:14px!important}
#page-activity .activity-modern-member-panel .activity-filter-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0!important;
  width:100%!important;
  min-height:78px!important;
  padding:8px 4px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#8b99aa!important;
  text-align:center!important;
  transition:.16s ease!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn:hover{
  background:#151e2a!important;border-color:#283648!important;color:#fff!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn.active{
  background:linear-gradient(180deg,rgba(255,79,125,.12),rgba(255,79,125,.045))!important;
  border-color:rgba(255,79,125,.42)!important;
  color:#fff!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-avatar{
  width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover!important;
  border:1px solid #37465a!important;background:#141d2a!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn.active .activity-member-filter-avatar{
  border-color:rgba(255,79,125,.75)!important;box-shadow:0 0 0 3px rgba(255,79,125,.08)!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn strong{
  max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:inherit!important;font-size:10px!important;font-weight:800!important;
}
#page-activity .activity-modern-member-panel .activity-member-filter-btn small{
  display:none!important;
}
#page-activity .activity-modern-member-panel .activity-filter-note{
  margin:14px 0 0!important;
  padding:11px!important;
  border:1px solid var(--activity-line-soft)!important;
  border-radius:11px!important;
  background:#0c121b!important;
  color:#687789!important;
  font-size:10px!important;
  line-height:1.55!important;
}
/* Light theme uses the same structure but keeps archive contrast */
html[data-theme="light"] #page-activity{
  --activity-surface:#ffffff;--activity-surface-2:#f8fafc;--activity-line:#dfe5ed;--activity-line-soft:rgba(71,85,105,.13);
  --activity-text:#17202c;--activity-muted:#7b8795;
}
html[data-theme="light"] #page-activity .activity-modern-live,html[data-theme="light"] #page-activity .activity-type-dock,html[data-theme="light"] #page-activity .activity-modern-feed-panel,html[data-theme="light"] #page-activity .activity-modern-member-panel{
  background:#fff!important;border-color:#dfe5ed!important;box-shadow:0 18px 55px rgba(33,46,64,.06)!important;
}
html[data-theme="light"] #page-activity .activity-modern-toolbar{background:#fbfcfe!important;border-color:#e5e9ef!important}
html[data-theme="light"] #page-activity .activity-type-filter-strip .activity-type-filter-btn,html[data-theme="light"] #page-activity .activity-modern-toolbar button{background:#f7f9fc!important;border-color:#e1e6ed!important;color:#677483!important}
html[data-theme="light"] #page-activity .activity-type-filter-strip .activity-type-filter-btn.active{background:#fff0f4!important;color:#a92d4e!important;border-color:#f1a5b8!important}
html[data-theme="light"] #page-activity .activity-feed::before{background:linear-gradient(180deg,transparent,#dfe5ed 4%,#dfe5ed 96%,transparent)}
html[data-theme="light"] #page-activity .activity-feed .activity-type-icon{box-shadow:0 0 0 5px #fff!important;background:#f3f6fa!important;border-color:#dbe2eb!important}
html[data-theme="light"] #page-activity .activity-feed .activity-card:hover{background:linear-gradient(90deg,rgba(30,41,59,.025),transparent 72%)!important}
html[data-theme="light"] #page-activity .activity-chat-line span{color:#263343!important}
html[data-theme="light"] #page-activity .activity-chat-line time,html[data-theme="light"] #page-activity .activity-chat-host,html[data-theme="light"] #page-activity .activity-card-topline>time{color:#8591a0!important}
html[data-theme="light"] #page-activity .activity-card-summary{color:#647181!important}
html[data-theme="light"] #page-activity .activity-modern-member-panel .activity-member-filter-btn:hover{background:#f7f9fc!important;border-color:#e0e6ee!important;color:#1d2937!important}
html[data-theme="light"] #page-activity .activity-modern-member-panel .activity-filter-note{background:#f8fafc!important;border-color:#e7ebf0!important;color:#7b8795!important}
@media (max-width:1100px){#page-activity .activity-modern-layout{grid-template-columns:1fr!important}
#page-activity .activity-modern-member-panel{position:static!important}
#page-activity .activity-modern-member-panel .activity-filter-list{grid-template-columns:repeat(6,minmax(0,1fr))!important}}
@media (max-width:760px){#page-activity .activity-modern-intro{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
#page-activity .activity-modern-live{margin:0!important}
#page-activity .activity-type-dock{align-items:flex-start!important;flex-direction:column!important;gap:8px!important;padding:10px!important}
#page-activity .activity-type-dock-label{display:none!important}
#page-activity .activity-type-filter-strip{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
#page-activity .activity-type-filter-strip .activity-type-filter-btn{width:100%!important}
#page-activity .activity-modern-toolbar{align-items:flex-start!important;flex-direction:column!important}
#page-activity .activity-toolbar-actions{width:100%;overflow-x:auto;padding-bottom:2px}
#page-activity .activity-feed{padding:0 8px 0 10px!important}
#page-activity .activity-feed::before{left:23px!important}
#page-activity .activity-feed .activity-card{grid-template-columns:26px 34px minmax(0,1fr)!important;gap:8px!important;padding:14px 2px!important}
#page-activity .activity-feed .activity-type-icon{width:24px!important;height:24px!important;margin-left:1px!important;box-shadow:0 0 0 4px #0f1520!important}
#page-activity .activity-feed .activity-avatar{width:32px!important;height:32px!important}
#page-activity .activity-card-actions{position:absolute!important;right:2px!important;bottom:9px!important;opacity:1!important;transform:none!important}
#page-activity .activity-card-topline{padding-right:0!important}
#page-activity .activity-card-topline>time{font-size:10px!important}
#page-activity .activity-member-name{font-size:13px!important}
#page-activity .activity-chat-line{grid-template-columns:48px minmax(0,1fr)!important;gap:8px!important}
#page-activity .activity-chat-line time{font-size:10px!important}
#page-activity .activity-chat-line span{font-size:12px!important}
#page-activity .activity-modern-member-panel .activity-filter-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
/* v24.11 · activity admin status + vivid icon system */
body:not(.admin-mode) #page-activity .activity-modern-status.admin-only{
  display:none!important;
}
body.admin-mode #page-activity .activity-modern-status.admin-only{
  display:flex!important;
}
#page-activity .activity-filter-type-icon svg.activity-symbol,#page-activity .activity-type-icon svg.activity-symbol{
  width:16px!important;
  height:16px!important;
  fill:currentColor!important;
  stroke:none!important;
  overflow:visible;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.18));
}
#page-activity .activity-feed .activity-type-icon svg.activity-symbol{
  width:15px!important;
  height:15px!important;
}
/* filter icons: icon-guide-like vivid colored symbols */
#page-activity .activity-type-filter-strip .activity-filter-type-icon{
  width:29px!important;
  height:29px!important;
  flex-basis:29px!important;
  border-radius:9px!important;
  position:relative!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055),0 5px 13px rgba(0,0,0,.16)!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn[data-activity-type="all"] .activity-filter-type-icon{
  color:#ff6b91!important;
  background:linear-gradient(145deg,rgba(255,88,133,.22),rgba(255,88,133,.08))!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn[data-activity-type="broadcast"] .activity-filter-type-icon{
  color:#52dda1!important;
  background:linear-gradient(145deg,rgba(82,221,161,.22),rgba(82,221,161,.07))!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn[data-activity-type="soop_post"] .activity-filter-type-icon{
  color:#b58cff!important;
  background:linear-gradient(145deg,rgba(181,140,255,.23),rgba(181,140,255,.07))!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn[data-activity-type="chat"] .activity-filter-type-icon{
  color:#4ecbff!important;
  background:linear-gradient(145deg,rgba(78,203,255,.24),rgba(78,203,255,.075))!important;
}
#page-activity .activity-type-filter-strip .activity-type-filter-btn:hover .activity-filter-type-icon{
  transform:translateY(-1px) scale(1.03);
}
#page-activity .activity-type-filter-strip .activity-filter-type-icon{
  transition:transform .16s ease,filter .16s ease!important;
}
/* individual feed events use the same icon language */
#page-activity .activity-feed .activity-card[data-tone="chat"] .activity-type-icon{
  color:#4ecbff!important;
  background:linear-gradient(145deg,rgba(78,203,255,.20),rgba(78,203,255,.07))!important;
  border-color:rgba(78,203,255,.26)!important;
}
#page-activity .activity-feed .activity-card[data-tone="live"] .activity-type-icon{
  color:#53dda1!important;
  background:linear-gradient(145deg,rgba(83,221,161,.20),rgba(83,221,161,.07))!important;
  border-color:rgba(83,221,161,.25)!important;
}
#page-activity .activity-feed .activity-card[data-tone="off"] .activity-type-icon{
  color:#ff6478!important;
  background:linear-gradient(145deg,rgba(255,100,120,.20),rgba(255,100,120,.065))!important;
  border-color:rgba(255,100,120,.24)!important;
}
#page-activity .activity-feed .activity-card[data-tone="title"] .activity-type-icon{
  color:#ff9b45!important;
  background:linear-gradient(145deg,rgba(255,155,69,.21),rgba(255,155,69,.07))!important;
  border-color:rgba(255,155,69,.25)!important;
}
#page-activity .activity-feed .activity-card[data-tone="category"] .activity-type-icon{
  color:#b886ff!important;
  background:linear-gradient(145deg,rgba(184,134,255,.22),rgba(184,134,255,.07))!important;
  border-color:rgba(184,134,255,.25)!important;
}
#page-activity .activity-feed .activity-card[data-tone="mode"] .activity-type-icon{
  color:#51d7d0!important;
  background:linear-gradient(145deg,rgba(81,215,208,.20),rgba(81,215,208,.065))!important;
  border-color:rgba(81,215,208,.24)!important;
}
#page-activity .activity-feed .activity-card[data-tone="post"] .activity-type-icon{
  color:#b58cff!important;
  background:linear-gradient(145deg,rgba(181,140,255,.22),rgba(181,140,255,.07))!important;
  border-color:rgba(181,140,255,.25)!important;
}
html[data-theme="light"] #page-activity .activity-type-filter-strip .activity-filter-type-icon{
  box-shadow:inset 0 0 0 1px rgba(31,41,55,.06),0 3px 10px rgba(31,41,55,.08)!important;
}
/* ========================================================================== */
/* v24.12 · FINAL PALETTE CLEANUP                                             */
/* 홈/도감/업순위에서 확정된 neutral slate + pink 시스템으로 잔존 레거시 제거 */
/* ========================================================================== */
/* 1. Legacy variables are remapped in BOTH themes.
   A large part of the old olive/navy look survived because only dark mode
   remapped the original --panel/--primary variables. */
:root,html[data-theme="light"]{
  --bg:var(--ja-bg)!important;
  --bg2:var(--ja-bg)!important;
  --panel:var(--ja-surface)!important;
  --panel2:var(--ja-surface-2)!important;
  --line:var(--ja-line)!important;
  --text:var(--ja-text)!important;
  --muted:var(--ja-muted)!important;
  --primary:var(--ja-accent)!important;
  --accent:var(--ja-accent)!important;
  --shadow:0 12px 34px rgba(30,41,59,.055)!important;
}
html[data-theme="dark"],body.dark{
  --shadow:0 18px 50px rgba(0,0,0,.22)!important;
}
/* Light mode must never inherit dark navy card fills. */
html[data-theme="light"] :is( #page-activity .activity-feed-panel, #page-activity .activity-filter-panel, #page-activity .activity-type-dock, #page-activity .activity-modern-member-panel, #page-vod .vod-toolbar, #page-posters .poster-archive-card, #page-uprank .up-rank-controls, #page-uprank .up-rank-filterbar, #page-uprank .up-rank-source, #page-uprank .up-rank-crew-pins, #page-calendar .calendar-card, #page-calendar .day ){
  background:var(--ja-surface)!important;
  color:var(--ja-text)!important;
  border-color:var(--ja-line)!important;
}
/* 2. POSTER — remove the old pink framed dashboard header / tinted cards. */
#page-posters.poster-archive-page{
  max-width:1500px!important;
  padding-top:30px!important;
}
#page-posters .poster-archive-header{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
  margin:0 0 22px!important;
  padding:0 4px 22px!important;
  border:0!important;
  border-bottom:1px solid var(--ja-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#page-posters .poster-archive-header::before{
  top:-17px!important;
  left:4px!important;
  color:var(--ja-accent)!important;
}
#page-posters .poster-archive-header .eyebrow{
  color:var(--ja-accent)!important;
}
#page-posters #openPosterManager{
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:11px!important;
  background:var(--ja-accent)!important;
  border-color:var(--ja-accent)!important;
  box-shadow:none!important;
}
#page-posters .poster-filter-tabs{
  display:inline-flex!important;
  width:auto!important;
  gap:5px!important;
  margin:0 0 18px!important;
  padding:4px!important;
  border:1px solid var(--ja-line)!important;
  border-radius:12px!important;
  background:var(--ja-surface)!important;
  box-shadow:none!important;
}
#page-posters .poster-filter-tabs button{
  min-height:36px!important;
  padding:0 14px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--ja-muted)!important;
  box-shadow:none!important;
}
#page-posters .poster-filter-tabs button:hover{
  background:var(--ja-surface-2)!important;
  color:var(--ja-text)!important;
}
#page-posters .poster-filter-tabs button.active,#page-posters .poster-filter-tabs button.sub.active{
  background:var(--ja-accent-soft)!important;
  border-color:color-mix(in srgb,var(--ja-accent) 35%,var(--ja-line))!important;
  color:var(--ja-accent)!important;
  box-shadow:none!important;
}
#page-posters .poster-archive-card{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  box-shadow:none!important;
}
#page-posters .poster-archive-card:hover{
  border-color:color-mix(in srgb,var(--ja-accent) 38%,var(--ja-line))!important;
  box-shadow:0 14px 38px color-mix(in srgb,var(--ja-accent) 6%,transparent)!important;
}
#page-posters .poster-image-stage{
  background:var(--ja-surface-2)!important;
}
#page-posters .poster-category-badge{
  background:color-mix(in srgb,var(--ja-accent) 9%,var(--ja-surface))!important;
  border-color:color-mix(in srgb,var(--ja-accent) 28%,var(--ja-line))!important;
  color:var(--ja-accent)!important;
  box-shadow:none!important;
}
#page-posters .poster-card-footer{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
}
#page-posters .poster-card-footer>span{
  background:var(--ja-surface-2)!important;
  color:var(--ja-accent)!important;
}
html[data-theme="dark"] #page-posters .poster-archive-header,html[data-theme="dark"] #page-posters .poster-filter-tabs,html[data-theme="dark"] #page-posters .poster-archive-card,html[data-theme="dark"] #page-posters .poster-card-footer{
  background:transparent!important;
}
html[data-theme="dark"] #page-posters .poster-archive-card,html[data-theme="dark"] #page-posters .poster-card-footer{
  background:var(--ja-surface)!important;
}
/* 3. UP RANK — eradicate the old olive/green page family. */
#page-uprank.up-rank-page{
  --rank-bg:var(--ja-bg)!important;
  --rank-card:var(--ja-surface)!important;
  --rank-card-2:var(--ja-surface-2)!important;
  --rank-line:var(--ja-line)!important;
  --rank-text:var(--ja-text)!important;
  --rank-muted:var(--ja-muted)!important;
  --rank-accent:var(--ja-accent)!important;
  --rank-accent-soft:var(--ja-accent-soft)!important;
  --crew-jinho:var(--ja-accent)!important;
  --crew-jinho-accent:var(--ja-accent)!important;
  --crew-jinho-bg:color-mix(in srgb,var(--ja-accent) 5%,var(--ja-surface))!important;
  --crew-jinho-bg-strong:color-mix(in srgb,var(--ja-accent) 9%,var(--ja-surface-2))!important;
  --crew-jinho-border:color-mix(in srgb,var(--ja-accent) 36%,var(--ja-line))!important;
  --crew-jindegi:#8b8cff!important;
  --crew-jindegi-accent:#7c7dff!important;
  --crew-jindegi-bg:color-mix(in srgb,#7c7dff 5%,var(--ja-surface))!important;
  --crew-jindegi-bg-strong:color-mix(in srgb,#7c7dff 9%,var(--ja-surface-2))!important;
  --crew-jindegi-border:color-mix(in srgb,#7c7dff 34%,var(--ja-line))!important;
  background:var(--ja-bg)!important;
  color:var(--ja-text)!important;
}
#page-uprank :is(.up-rank-controls,.up-rank-filterbar,.up-rank-source,.up-rank-crew-pins,.up-rank-podium,.up-rank-podium-list,.up-rank-podium-card,.up-rank-pin-card,.up-rank-table td,.up-rank-search,.up-rank-sort-button,.up-rank-refresh){
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
#page-uprank :is(.up-rank-search,.up-rank-sort-button,.up-rank-filterbar button,.up-rank-pin-card,.up-rank-link a){
  background:var(--ja-surface-2)!important;
}
#page-uprank .up-rank-podium-card.rank-1{
  background:linear-gradient(90deg,rgba(240,183,66,.075),var(--ja-surface) 44%)!important;
}
#page-uprank .up-rank-podium-card.rank-2{
  background:linear-gradient(90deg,rgba(148,163,184,.055),var(--ja-surface) 44%)!important;
}
#page-uprank .up-rank-podium-card.rank-3{
  background:linear-gradient(90deg,rgba(196,139,92,.055),var(--ja-surface) 44%)!important;
}
#page-uprank .up-rank-pin-card.is-jinho,#page-uprank .up-rank-pin-card.is-jindegi{
  background:var(--ja-surface-2)!important;
  border-width:1px!important;
}
#page-uprank .up-rank-filterbar button[data-up-rank-filter="jindegi"].active{
  color:#7c7dff!important;
  background:color-mix(in srgb,#7c7dff 8%,var(--ja-surface-2))!important;
}
#page-uprank .up-rank-filterbar button[data-up-rank-filter="jinho"].active{
  color:var(--ja-accent)!important;
  background:var(--ja-accent-soft)!important;
}
/* 4. VOD — remove green selects/search and old tinted cards. */








#page-vod .vod-library-thumb{background:var(--ja-surface-2)!important}
#page-vod .vod-library-copy>span i{
  background:var(--ja-surface-2)!important;
  color:var(--ja-accent)!important;
}
#page-vod .vod-pagination button{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
}
#page-vod .vod-pagination button.active{
  background:var(--ja-accent)!important;
  border-color:var(--ja-accent)!important;
  color:#fff!important;
}
/* 5. CALENDAR — day focus uses neutral surface + pink, never olive fill. */
#page-calendar .day,html[data-theme="dark"] #page-calendar .day,html[data-theme="light"] #page-calendar .day{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
}
#page-calendar .day:not(.outside):hover,#page-calendar .day:not(.outside):focus-within,#page-calendar .day.event-detail-day,#page-calendar .day.today-jump,html[data-theme="dark"] #page-calendar .day:not(.outside):hover,html[data-theme="dark"] #page-calendar .day:not(.outside):focus-within,html[data-theme="dark"] #page-calendar .day.event-detail-day,html[data-theme="dark"] #page-calendar .day.today-jump{
  background:var(--ja-surface-2)!important;
  color:var(--ja-text)!important;
}
#page-calendar .day.today,#page-calendar .day.today:hover,#page-calendar .day.today:focus-within,#page-calendar .day.today.event-detail-day,#page-calendar .day.today.today-jump{
  background:linear-gradient(180deg,color-mix(in srgb,var(--ja-accent) 7%,var(--ja-surface)),var(--ja-surface))!important;
  border-color:var(--ja-accent)!important;
  box-shadow:inset 0 0 0 1px var(--ja-accent)!important;
}
#page-calendar .event-pill,#page-calendar .day-summary-item,#page-calendar .mobile-event-item{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  border-left-color:color-mix(in srgb,var(--event,var(--ja-accent)) 72%,var(--ja-line))!important;
}
#page-calendar .event-pill:hover,#page-calendar .day-summary-item:hover,#page-calendar .mobile-event-item:hover{
  background:var(--ja-surface-3)!important;
}
/* 6. Event popover / day summary / legacy detail — one neutral dialog system. */
.event-popover,#daySummaryModal .day-summary-modal,.schedule-detail-modal,.day-summary-modal,.portal-modal,.monthly-history-panel{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.26)!important;
}
#daySummaryModal .day-summary-head,.monthly-history-head{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
}
.event-popover-memo,.event-popover-notice,#daySummaryModal .daily-broadcast-card,#daySummaryModal .day-summary-item,.event-notice-card,.mh-section,.mh-summary-card,.mh-broadcast-card,.mh-top-row{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
#daySummaryModal .daily-broadcast-card{
  border-color:var(--ja-line)!important;
}
#daySummaryModal .daily-broadcast-icon{
  background:var(--ja-accent-soft)!important;
  color:var(--ja-accent)!important;
}
#daySummaryModal .day-summary-item{
  border-left:3px solid color-mix(in srgb,var(--event,var(--ja-accent)) 70%,var(--ja-line))!important;
}
#daySummaryModal .day-summary-item:hover{
  background:var(--ja-surface-3)!important;
  border-color:var(--ja-line-strong)!important;
  border-left-color:var(--event,var(--ja-accent))!important;
}
#daySummaryModal .day-summary-time{
  color:var(--ja-muted)!important;
}
#daySummaryModal .day-summary-star{color:var(--ja-soft)!important}
#daySummaryModal .day-summary-star:hover{color:var(--ja-accent)!important}
.event-popover-actions,.detail-actions{
  background:var(--ja-surface)!important;
  border-color:var(--ja-line)!important;
}
.event-popover-actions .btn,.detail-actions .btn,#daySummaryModal .daily-broadcast-manage{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-text)!important;
  box-shadow:none!important;
}
.event-popover-close,.ct-trend-close,.monthly-history-head button{
  background:var(--ja-surface-2)!important;
  border-color:var(--ja-line)!important;
  color:var(--ja-muted)!important;
}
/* Light dialog backdrop stays light/clean; dark backdrop remains deep neutral. */
html[data-theme="light"] :is(.event-popover-layer,#daySummaryModal.day-summary-layer,.modal-layer,.monthly-history-layer){
  --dialog-backdrop:rgba(31,41,55,.20);
}
html[data-theme="dark"] :is(.event-popover-layer,#daySummaryModal.day-summary-layer,.modal-layer,.monthly-history-layer){
  --dialog-backdrop:rgba(3,7,12,.74);
}
#daySummaryModal.day-summary-layer,.modal-layer,.monthly-history-layer{
  background:var(--dialog-backdrop,rgba(3,7,12,.7))!important;
}
@media(max-width:680px){#page-posters .poster-archive-header{
    align-items:flex-start!important;
    padding:0 0 18px!important;
  }}
/* =========================================================
   v24.13 · DAY SUMMARY MODAL — remove legacy olive/green shell
   The legacy bundle has highly-specific dark selectors at the end,
   so these overrides intentionally match/exceed that specificity.
   Semantic event/category colors remain only as small accents.
   ========================================================= */
#daySummaryModal.day-summary-layer{
  background:rgba(3,7,12,.72)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-modal{
  background:#0f1622!important;
  border-color:#283548!important;
  color:#eef3f9!important;
  box-shadow:0 30px 90px rgba(0,0,0,.56)!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-head{
  background:#0f1622!important;
  border-color:#283548!important;
}
html[data-theme="dark"] #daySummaryModal #daySummaryMeta{
  background:#182231!important;
  color:#91a0b2!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-close,html[data-theme="dark"] #daySummaryModal .day-summary-nav button,html[data-theme="dark"] #daySummaryModal .daily-broadcast-manage{
  background:#141d2a!important;
  border-color:#2a3749!important;
  color:#e7edf5!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-nav{
  background:#0f1622!important;
  border-color:#283548!important;
}
html[data-theme="dark"] #daySummaryModal .daily-broadcast-card{
  background:#141d2a!important;
  border-color:#2a3749!important;
  color:#eef3f9!important;
}
html[data-theme="dark"] #daySummaryModal .daily-broadcast-icon{
  background:rgba(255,64,112,.11)!important;
  color:#ff4f7b!important;
}
html[data-theme="dark"] #daySummaryModal .daily-broadcast-copy strong{
  color:#eef3f9!important;
}
html[data-theme="dark"] #daySummaryModal .daily-broadcast-copy p{
  color:#8f9bad!important;
}
html[data-theme="dark"] #daySummaryModal .daily-vod-links .vod-detail-link{
  color:#ff4f7b!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-list{
  background:#0f1622!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-item{
  background:linear-gradient(
    90deg,
    color-mix(in srgb,var(--event,#ff4f7b) 7%,#141d2a),
    #141d2a 56%
  )!important;
  border-color:color-mix(in srgb,var(--event,#ff4f7b) 32%,#2a3749)!important;
  border-left-color:var(--event,#ff4f7b)!important;
  color:#eef3f9!important;
  box-shadow:none!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-item:hover{
  background:linear-gradient(
    90deg,
    color-mix(in srgb,var(--event,#ff4f7b) 12%,#182231),
    #182231 58%
  )!important;
  border-color:color-mix(in srgb,var(--event,#ff4f7b) 42%,#354458)!important;
  border-left-color:var(--event,#ff4f7b)!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-time{
  color:color-mix(in srgb,var(--event,#ff4f7b) 66%,#aeb9c7)!important;
}
html[data-theme="dark"] #daySummaryModal .day-summary-copy b{color:#f3f6fa!important}
html[data-theme="dark"] #daySummaryModal .day-summary-copy small{color:#8f9bad!important}
html[data-theme="dark"] #daySummaryModal .day-summary-star{color:#718096!important}
html[data-theme="dark"] #daySummaryModal .day-summary-star:hover{color:#ff4f7b!important}
html[data-theme="dark"] #daySummaryModal .day-summary-add{
  border-color:rgba(255,79,123,.42)!important;
  color:#ff4f7b!important;
  background:rgba(255,79,123,.025)!important;
}
/* Light mode: true light surfaces — no navy/green residue. */
html[data-theme="light"] #daySummaryModal.day-summary-layer{
  background:rgba(31,41,55,.22)!important;
}
html[data-theme="light"] #daySummaryModal .day-summary-modal,html[data-theme="light"] #daySummaryModal .day-summary-head,html[data-theme="light"] #daySummaryModal .day-summary-nav,html[data-theme="light"] #daySummaryModal .day-summary-list{
  background:#ffffff!important;
  border-color:#e4e8ee!important;
  color:#171a21!important;
}
html[data-theme="light"] #daySummaryModal #daySummaryMeta,html[data-theme="light"] #daySummaryModal .day-summary-close,html[data-theme="light"] #daySummaryModal .day-summary-nav button,html[data-theme="light"] #daySummaryModal .daily-broadcast-manage{
  background:#f6f8fb!important;
  border-color:#e1e6ed!important;
  color:#303846!important;
}
html[data-theme="light"] #daySummaryModal .daily-broadcast-card{
  background:#f8fafc!important;
  border-color:#e1e6ed!important;
  color:#171a21!important;
}
html[data-theme="light"] #daySummaryModal .daily-broadcast-icon{
  background:#fff0f4!important;
  color:#f43f6f!important;
}
html[data-theme="light"] #daySummaryModal .day-summary-item{
  background:linear-gradient(
    90deg,
    color-mix(in srgb,var(--event,#f43f6f) 5%,#ffffff),
    #ffffff 54%
  )!important;
  border-color:color-mix(in srgb,var(--event,#f43f6f) 25%,#dfe5ec)!important;
  border-left-color:var(--event,#f43f6f)!important;
  color:#171a21!important;
}
html[data-theme="light"] #daySummaryModal .day-summary-item:hover{
  background:linear-gradient(
    90deg,
    color-mix(in srgb,var(--event,#f43f6f) 8%,#f7f9fc),
    #f7f9fc 58%
  )!important;
}
html[data-theme="light"] #daySummaryModal .day-summary-add{
  border-color:rgba(244,63,111,.34)!important;
  color:#f43f6f!important;
  background:#fff!important;
}
@media(max-width:700px){#daySummaryModal.day-summary-layer{
    background:rgba(3,7,12,.72)!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
  }
html[data-theme="light"] #daySummaryModal.day-summary-layer{
    background:rgba(31,41,55,.22)!important;
  }}
/* ============================================================
   v24.14 · DARK CALENDAR CATEGORY COLOR VISIBILITY
   Light mode remains unchanged. Dark mode keeps the unified
   neutral surfaces while making each schedule category legible.
   ============================================================ */
html[data-theme="dark"] #page-calendar .event-pill,html[data-theme="dark"] #page-calendar .mobile-event-item{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 18%,#182230) 0%,
      color-mix(in srgb,var(--event,var(--ja-accent)) 10%,#151e2b) 48%,
      #131b27 100%
    )!important;
  border-color:color-mix(in srgb,var(--event,var(--ja-accent)) 46%,#2a3749)!important;
  border-left:4px solid var(--event,var(--ja-accent))!important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb,var(--event,var(--ja-accent)) 5%,transparent),
    0 1px 0 rgba(255,255,255,.015)!important;
}
html[data-theme="dark"] #page-calendar .event-pill.multi-day.range-middle,html[data-theme="dark"] #page-calendar .event-pill.multi-day.range-end{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 14%,#17212e),
      color-mix(in srgb,var(--event,var(--ja-accent)) 7%,#141d29)
    )!important;
  border-top-color:color-mix(in srgb,var(--event,var(--ja-accent)) 48%,#2a3749)!important;
  border-bottom-color:color-mix(in srgb,var(--event,var(--ja-accent)) 48%,#2a3749)!important;
}
html[data-theme="dark"] #page-calendar .event-pill:hover,html[data-theme="dark"] #page-calendar .mobile-event-item:hover{
  background:
    linear-gradient(
      90deg,
      color-mix(in srgb,var(--event,var(--ja-accent)) 25%,#1b2737) 0%,
      color-mix(in srgb,var(--event,var(--ja-accent)) 13%,#182331) 52%,
      #17212e 100%
    )!important;
  border-color:color-mix(in srgb,var(--event,var(--ja-accent)) 64%,#354458)!important;
}
html[data-theme="dark"] #page-calendar .event-pill time{
  color:color-mix(in srgb,var(--event,var(--ja-accent)) 82%,#f4f7fb)!important;
  text-shadow:0 0 12px color-mix(in srgb,var(--event,var(--ja-accent)) 16%,transparent)!important;
}
html[data-theme="dark"] #page-calendar .event-title{
  color:#f3f6fa!important;
}
html[data-theme="dark"] #page-calendar .event-sub-badge,html[data-theme="dark"] #page-calendar .sub-category-badge{
  background:color-mix(in srgb,var(--sub,var(--event,var(--ja-accent))) 24%,#1a2432)!important;
  border-color:color-mix(in srgb,var(--sub,var(--event,var(--ja-accent))) 64%,#344255)!important;
  color:color-mix(in srgb,var(--sub,var(--event,var(--ja-accent))) 82%,#f2f5f9)!important;
}
/* Dark category filter chips: visible category identity without old saturated fills. */
html[data-theme="dark"] #page-calendar .filter{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--filter,#788291) 16%,#182230),
      color-mix(in srgb,var(--filter,#788291) 9%,#151e2b)
    )!important;
  border-color:color-mix(in srgb,var(--filter,#788291) 44%,#2a3749)!important;
  color:color-mix(in srgb,var(--filter,#788291) 68%,#e7edf5)!important;
}
html[data-theme="dark"] #page-calendar .filter::before{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--filter,#788291) 22%,transparent),
    0 0 9px color-mix(in srgb,var(--filter,#788291) 28%,transparent)!important;
}
html[data-theme="dark"] #page-calendar .filter.active{
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb,var(--filter,#788291) 28%,#192433),
      color-mix(in srgb,var(--filter,#788291) 16%,#151f2c)
    )!important;
  border-color:color-mix(in srgb,var(--filter,#788291) 72%,#354458)!important;
  color:#f5f7fb!important;
}
/* ============================================================
   V24.15 · SBO-inspired motion system
   - cinematic home section reveals
   - page enter transitions
   - animated calendar category filtering / reflow
   ============================================================ */
:root{
  --ja-motion-ease:cubic-bezier(.16,1,.3,1);
  --ja-motion-ease-soft:cubic-bezier(.22,1,.36,1);
}
/* Page changes: short and restrained, so navigation feels connected instead of flashing. */
.app-page.active:not(#page-home){
  animation:jaPageEnter .42s var(--ja-motion-ease) both;
}
@keyframes jaPageEnter{
  from{opacity:0;transform:translate3d(0,12px,0);filter:blur(3px)}
  to{opacity:1;transform:none;filter:none}
}
/* Home: stronger section-to-section handoff while keeping the existing IntersectionObserver. */
#page-home .home-v23 [data-home-reveal]{
  opacity:0!important;
  transform:translate3d(0,46px,0) scale(.988)!important;
  filter:blur(8px);
  transition:
    opacity .62s var(--reveal-delay,0ms) ease,
    transform .82s var(--reveal-delay,0ms) var(--ja-motion-ease),
    filter .62s var(--reveal-delay,0ms) ease!important;
  will-change:opacity,transform,filter;
}
#page-home .home-v23 [data-home-reveal].is-visible{
  opacity:1!important;
  transform:translate3d(0,0,0) scale(1)!important;
  filter:blur(0);
}
#page-home .home-v23 [data-home-reveal] .home-v23-wide-head,#page-home .home-v23 [data-home-reveal] .home-v23-section>header,#page-home .home-v23 [data-home-reveal] .home-v23-archive-copy{
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:opacity .48s calc(var(--reveal-delay,0ms) + 70ms) ease,transform .64s calc(var(--reveal-delay,0ms) + 70ms) var(--ja-motion-ease);
}
#page-home .home-v23 [data-home-reveal].is-visible .home-v23-wide-head,#page-home .home-v23 [data-home-reveal].is-visible .home-v23-section>header,#page-home .home-v23 [data-home-reveal].is-visible .home-v23-archive-copy{
  opacity:1;transform:none;
}
#page-home .home-v23 .home-v23-overview.is-visible .home-v23-section:nth-child(1){animation:jaHomeColumnIn .58s .05s var(--ja-motion-ease) both}
#page-home .home-v23 .home-v23-overview.is-visible .home-v23-section:nth-child(2){animation:jaHomeColumnIn .62s .11s var(--ja-motion-ease) both}
#page-home .home-v23 .home-v23-overview.is-visible .home-v23-section:nth-child(3){animation:jaHomeColumnIn .66s .17s var(--ja-motion-ease) both}
@keyframes jaHomeColumnIn{
  from{opacity:.15;transform:translate3d(0,22px,0)}
  to{opacity:1;transform:none}
}
#page-home .home-v23-member,#page-home .home-v23-vod-card,#page-home .home-v23-live-card,#page-home .home-v23-activity-row{
  transition:transform .28s var(--ja-motion-ease),opacity .28s ease,border-color .28s ease,background-color .28s ease!important;
}
@media (hover:hover){#page-home .home-v23-member:hover,#page-home .home-v23-vod-card:hover,#page-home .home-v23-live-card:hover{transform:translate3d(0,-5px,0)}
#page-home .home-v23-activity-row:hover{transform:translate3d(5px,0,0)}}
/* Calendar filters: cards move/cross-fade to their new emphasis order instead of snapping. */
#page-calendar #categoryFilters .filter{
  transition:transform .24s var(--ja-motion-ease),opacity .24s ease,background-color .24s ease,border-color .24s ease,color .24s ease,box-shadow .24s ease!important;
}
#page-calendar #categoryFilters .filter:active{transform:scale(.94)}
#page-calendar #calendarGrid .event-pill{
  transition:opacity .3s ease,transform .36s var(--ja-motion-ease),filter .3s ease,background-color .3s ease,border-color .3s ease!important;
  transform-origin:center center;
}
#page-calendar #calendarGrid .event-pill.category-dimmed{
  transform:scale(.975);
}
#page-calendar #calendarGrid .event-pill.category-focused{
  transform:translateZ(0) scale(1);
}
/* Chrome/Edge View Transitions: preserve each event as it changes position after a filter click. */
html.calendar-filter-transition::view-transition-group(*){
  animation-duration:.42s;
  animation-timing-function:var(--ja-motion-ease);
}
html.calendar-filter-transition::view-transition-old(*){
  animation-duration:.28s;
  animation-timing-function:ease;
}
html.calendar-filter-transition::view-transition-new(*){
  animation-duration:.42s;
  animation-timing-function:var(--ja-motion-ease);
}
@media (prefers-reduced-motion:reduce){.app-page.active:not(#page-home){animation:none!important}
#page-home .home-v23 [data-home-reveal],#page-home .home-v23 [data-home-reveal] .home-v23-wide-head,#page-home .home-v23 [data-home-reveal] .home-v23-section>header,#page-home .home-v23 [data-home-reveal] .home-v23-archive-copy{
    opacity:1!important;transform:none!important;filter:none!important;transition:none!important;
  }
#page-home .home-v23 .home-v23-overview.is-visible .home-v23-section{animation:none!important}
#page-calendar #calendarGrid .event-pill,#page-calendar #categoryFilters .filter{transition:none!important;transform:none!important}}
/* ============================================================
   V24.16 · SBO scene-transition correction
   The reference uses a full-screen scene handoff, not a simple
   translate-up page fade. Calendar filter motion keeps stable
   element identities so remaining pills physically reflow.
   ============================================================ */
/* Disable the previous generic page-enter animation. */
.app-page.active:not(#page-home){animation:none!important}
/* Home reveal: zoom/open rather than a vertical slide. */
#page-home .home-v23 [data-home-reveal]{
  opacity:.08!important;
  transform:scale(.955)!important;
  filter:blur(7px);
  clip-path:inset(5% 2% 5% 2% round 18px);
  transition:
    opacity .52s var(--reveal-delay,0ms) ease,
    transform .72s var(--reveal-delay,0ms) cubic-bezier(.16,1,.3,1),
    filter .52s var(--reveal-delay,0ms) ease,
    clip-path .72s var(--reveal-delay,0ms) cubic-bezier(.16,1,.3,1)!important;
}
#page-home .home-v23 [data-home-reveal].is-visible{
  opacity:1!important;
  transform:scale(1)!important;
  filter:blur(0);
  clip-path:inset(0 0 0 0 round 0);
}
#page-home .home-v23 [data-home-reveal] .home-v23-wide-head,#page-home .home-v23 [data-home-reveal] .home-v23-section>header,#page-home .home-v23 [data-home-reveal] .home-v23-archive-copy{
  transform:scale(.97)!important;
}
#page-home .home-v23 [data-home-reveal].is-visible .home-v23-wide-head,#page-home .home-v23 [data-home-reveal].is-visible .home-v23-section>header,#page-home .home-v23 [data-home-reveal].is-visible .home-v23-archive-copy{
  transform:scale(1)!important;
}
/* Global SBO-like scene cover used only when switching real app pages. */
.app-scene-transition{
  position:fixed;
  inset:0;
  z-index:2147483000;
  overflow:hidden;
  display:grid;
  place-items:center;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%,rgba(38,73,110,.27),transparent 30%),
    linear-gradient(145deg,#08101a 0%,#09121f 48%,#05090f 100%);
  isolation:isolate;
}
.app-scene-transition::before,.app-scene-transition::after{
  content:"JA";
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%) scale(.66) rotate(-4deg);
  font:900 min(54vw,760px)/.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.12em;
  color:transparent;
  -webkit-text-stroke:2px rgba(129,190,232,.10);
  opacity:0;
  white-space:nowrap;
}
.app-scene-transition::after{
  transform:translate(-46%,-48%) scale(.5) rotate(7deg);
  -webkit-text-stroke:1px rgba(255,74,126,.08);
  filter:blur(1px);
}
.app-scene-transition__mesh{
  position:absolute;inset:-20%;
  background:
    linear-gradient(120deg,transparent 34%,rgba(58,101,143,.14) 49%,transparent 58%),
    linear-gradient(300deg,transparent 42%,rgba(255,74,126,.07) 52%,transparent 60%);
  transform:scale(.7) rotate(-4deg);
  opacity:0;
}
.app-scene-transition__mark{
  position:relative;
  z-index:2;
  display:flex;
  align-items:baseline;
  gap:.45rem;
  transform:scale(.68);
  opacity:0;
  filter:blur(9px);
  color:#f7fbff;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.app-scene-transition__mark span{font-size:clamp(15px,1.1vw,20px);font-weight:600;opacity:.68}
.app-scene-transition__mark b{font-size:clamp(26px,2.1vw,40px);font-weight:900;letter-spacing:.04em}
.app-scene-transition__mark i{
  position:absolute;left:50%;top:calc(100% + 18px);width:88px;height:2px;
  transform:translateX(-50%) scaleX(.2);transform-origin:center;
  background:linear-gradient(90deg,transparent,#67c8ff,#ff4a7e,transparent);
  opacity:.65;
}
.app-scene-transition__mark small{
  position:absolute;left:50%;top:calc(100% + 29px);transform:translateX(-50%);
  font-size:10px;font-weight:800;letter-spacing:.22em;color:#8fa2b7;white-space:nowrap;
}
.app-scene-transition.is-covering{
  visibility:visible;
  pointer-events:auto;
  animation:jaSceneCover .30s cubic-bezier(.2,.72,.2,1) forwards;
}
.app-scene-transition.is-covering::before{animation:jaSceneGlyphIn .30s cubic-bezier(.18,.82,.24,1) forwards}
.app-scene-transition.is-covering::after{animation:jaSceneGlyphInAlt .30s cubic-bezier(.18,.82,.24,1) forwards}
.app-scene-transition.is-covering .app-scene-transition__mesh{animation:jaSceneMeshIn .30s ease forwards}
.app-scene-transition.is-covering .app-scene-transition__mark{animation:jaSceneMarkIn .30s cubic-bezier(.16,1,.3,1) forwards}
.app-scene-transition.is-covering .app-scene-transition__mark i{animation:jaSceneLineIn .30s ease forwards}
.app-scene-transition.is-revealing{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  animation:jaSceneReveal .46s cubic-bezier(.22,1,.36,1) forwards;
}
.app-scene-transition.is-revealing::before{opacity:.46;animation:jaSceneGlyphOut .46s cubic-bezier(.22,1,.36,1) forwards}
.app-scene-transition.is-revealing::after{opacity:.28;animation:jaSceneGlyphOutAlt .46s cubic-bezier(.22,1,.36,1) forwards}
.app-scene-transition.is-revealing .app-scene-transition__mesh{opacity:.5;animation:jaSceneMeshOut .46s ease forwards}
.app-scene-transition.is-revealing .app-scene-transition__mark{opacity:1;filter:none;animation:jaSceneMarkOut .40s ease forwards}
@keyframes jaSceneCover{from{opacity:0}to{opacity:1}}
@keyframes jaSceneGlyphIn{from{opacity:0;transform:translate(-50%,-50%) scale(.55) rotate(-8deg);filter:blur(12px)}to{opacity:.46;transform:translate(-50%,-50%) scale(1.05) rotate(-2deg);filter:blur(0)}}
@keyframes jaSceneGlyphInAlt{from{opacity:0;transform:translate(-46%,-48%) scale(.42) rotate(11deg)}to{opacity:.28;transform:translate(-46%,-48%) scale(.9) rotate(5deg)}}
@keyframes jaSceneMeshIn{from{opacity:0;transform:scale(.7) rotate(-8deg)}to{opacity:.58;transform:scale(1.04) rotate(0)}}
@keyframes jaSceneMarkIn{from{opacity:0;transform:scale(.68);filter:blur(9px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes jaSceneLineIn{from{transform:translateX(-50%) scaleX(.15);opacity:0}to{transform:translateX(-50%) scaleX(1);opacity:.75}}
@keyframes jaSceneReveal{0%{opacity:1}58%{opacity:.98}100%{opacity:0;visibility:hidden}}
@keyframes jaSceneGlyphOut{from{opacity:.46;transform:translate(-50%,-50%) scale(1.05) rotate(-2deg)}to{opacity:0;transform:translate(-50%,-50%) scale(1.62) rotate(2deg);filter:blur(10px)}}
@keyframes jaSceneGlyphOutAlt{from{opacity:.28;transform:translate(-46%,-48%) scale(.9) rotate(5deg)}to{opacity:0;transform:translate(-46%,-48%) scale(1.5) rotate(0)}}
@keyframes jaSceneMeshOut{from{opacity:.58;transform:scale(1.04)}to{opacity:0;transform:scale(1.35)}}
@keyframes jaSceneMarkOut{0%{opacity:1;transform:scale(1);filter:blur(0)}65%{opacity:.15;transform:scale(1.12);filter:blur(3px)}100%{opacity:0;transform:scale(1.18);filter:blur(6px)}}
/* Current page zooms into the cover; next page resolves underneath it. */
body.app-scene-out .app-page.active{
  animation:jaScenePageOut .30s cubic-bezier(.32,.02,.3,1) both!important;
  transform-origin:50% 45%;
  will-change:opacity,transform,filter;
}
body.app-scene-in .app-page.active{
  animation:jaScenePageIn .46s cubic-bezier(.16,1,.3,1) both!important;
  transform-origin:50% 42%;
  will-change:opacity,transform,filter;
}
@keyframes jaScenePageOut{from{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:.08;transform:scale(1.045);filter:blur(4px)}}
@keyframes jaScenePageIn{from{opacity:0;transform:scale(.975);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
/* Calendar transition: no whole-page crossfade. Only named filters/events move. */
html.calendar-filter-transition::view-transition-old(root),html.calendar-filter-transition::view-transition-new(root){animation:none!important;mix-blend-mode:normal!important}
html.calendar-filter-transition::view-transition-group(root){animation:none!important}
html.calendar-filter-transition::view-transition-group(*){
  animation-duration:.38s!important;
  animation-timing-function:cubic-bezier(.16,1,.3,1)!important;
}
html.calendar-filter-transition::view-transition-old(*){
  animation:jaCalendarOld .22s ease both!important;
}
html.calendar-filter-transition::view-transition-new(*){
  animation:jaCalendarNew .38s cubic-bezier(.16,1,.3,1) both!important;
}
@keyframes jaCalendarOld{to{opacity:.16;transform:scale(.965)}}
@keyframes jaCalendarNew{from{opacity:.22;transform:scale(.965)}to{opacity:1;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.app-scene-transition{display:none!important}
body.app-scene-out .app-page.active,body.app-scene-in .app-page.active{animation:none!important}
#page-home .home-v23 [data-home-reveal]{clip-path:none!important}}
/* ============================================================
   V24.17 · SBO segmented home
   Four full-screen home scenes:
   VIDEO -> NOW -> MEMBERS -> RECENT VOD
   ============================================================ */
@media (min-width:901px) and (prefers-reduced-motion:no-preference){html.home-v23-snap{
    scroll-snap-type:y mandatory;
    scroll-behavior:smooth;
    overscroll-behavior-y:none;
  }
html.home-v23-snap body.home-v23-page{
    scroll-behavior:smooth;
  }
body.home-v23-page #page-home .home-v23{
    --home-scene-pad-top:clamp(96px,10vh,132px);
    --home-scene-pad-bottom:clamp(54px,6.5vh,86px);
    overflow:clip;
  }
body.home-v23-page #page-home .home-v23-content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
body.home-v23-page #page-home .home-v23-scene{
    position:relative;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
body.home-v23-page #page-home .home-v23-hero{
    height:100svh!important;
    min-height:680px!important;
  }
body.home-v23-page #page-home .home-v23-hero-inner{
    width:min(var(--home-max),calc(100% - 96px));
    padding-top:118px;
    padding-bottom:64px;
  }
body.home-v23-page #page-home .home-v23-overview,body.home-v23-page #page-home .home-v23-members,body.home-v23-page #page-home .home-v23-vods{
    width:min(var(--home-max),calc(100% - 96px));
    min-height:100svh;
    margin:0 auto!important;
    padding:var(--home-scene-pad-top) 0 var(--home-scene-pad-bottom)!important;
    border-top:0!important;
    display:grid;
    align-content:center;
    isolation:isolate;
  }
/* full-width panel boundaries create the "separate screen" feeling */
body.home-v23-page #page-home .home-v23-overview::before,body.home-v23-page #page-home .home-v23-members::before,body.home-v23-page #page-home .home-v23-vods::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    bottom:0;
    left:calc((100vw - 100%)/-2);
    right:calc((100vw - 100%)/-2);
    border-top:1px solid var(--home-line);
    border-bottom:1px solid var(--home-line);
    pointer-events:none;
  }
body.home-v23-page #page-home .home-v23-overview::before{
    background:
      radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--home-accent) 3.5%,transparent),transparent 38%),
      var(--home-bg);
  }
body.home-v23-page #page-home .home-v23-members::before{
    background:
      linear-gradient(180deg,color-mix(in srgb,var(--home-surface) 38%,var(--home-bg)),var(--home-bg));
  }
body.home-v23-page #page-home .home-v23-vods::before{
    background:
      radial-gradient(circle at 85% 18%,color-mix(in srgb,var(--home-accent) 3.2%,transparent),transparent 30%),
      var(--home-bg);
  }
body.home-v23-page #page-home .home-v23-overview{
    grid-template-columns:.82fr 1.38fr .9fr;
    border-bottom:0!important;
  }
body.home-v23-page #page-home .home-v23-section{
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
body.home-v23-page #page-home .home-v23-members{
    grid-template-rows:auto auto auto;
    gap:clamp(18px,3vh,36px);
  }
body.home-v23-page #page-home .home-v23-members .home-v23-wide-head{
    margin-bottom:0;
  }
body.home-v23-page #page-home .home-v23-member-carousel{
    align-self:center;
    width:100%;
  }
body.home-v23-page #page-home .home-v23-vods{
    grid-template-rows:auto auto auto;
    gap:clamp(18px,2.4vh,30px);
  }
body.home-v23-page #page-home .home-v23-vods>.home-v23-wide-head{
    margin-bottom:0;
  }
body.home-v23-page #page-home .home-v23-vod-grid{
    align-self:center;
  }
/* Keep the archive shortcuts, but fold them into the VOD screen. */
body.home-v23-page #page-home .home-v23-archive-compact{
    display:grid;
    grid-template-columns:minmax(230px,.62fr) minmax(0,1.75fr);
    gap:34px;
    align-items:center;
    margin:0!important;
    padding:22px 0 0!important;
    border-top:1px solid var(--home-line)!important;
  }
body.home-v23-page #page-home .home-v23-archive-compact .home-v23-archive-copy h2{
    margin-top:5px;
    font-size:clamp(25px,2.3vw,36px);
  }
body.home-v23-page #page-home .home-v23-archive-compact .home-v23-archive-copy p{
    margin-top:7px;
    font-size:10px;
  }
body.home-v23-page #page-home .home-v23-archive-compact .home-v23-archive-links button{
    min-height:78px;
    padding-top:14px;
    padding-bottom:14px;
  }
/* A subtle side rail makes the four panels read as separate scenes. */
body.home-v23-page #page-home .home-v23-scene-nav{
    position:fixed;
    z-index:92;
    right:clamp(16px,2vw,34px);
    top:50%;
    transform:translateY(-50%);
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:13px;
  }
body.home-v23-page #page-home .home-v23-scene-nav button{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    min-width:76px;
    padding:4px 0;
    border:0;
    background:transparent;
    color:var(--home-muted);
    cursor:pointer;
    opacity:.52;
    transition:opacity .22s ease,color .22s ease,transform .28s cubic-bezier(.16,1,.3,1);
  }
body.home-v23-page #page-home .home-v23-scene-nav button i{
    width:16px;
    height:1px;
    background:currentColor;
    transition:width .28s cubic-bezier(.16,1,.3,1),background .22s ease;
  }
body.home-v23-page #page-home .home-v23-scene-nav button span{
    width:48px;
    font-size:8px;
    line-height:1;
    font-weight:900;
    letter-spacing:.13em;
    text-align:left;
  }
body.home-v23-page #page-home .home-v23-scene-nav button:hover{
    opacity:.86;
    transform:translateX(-2px);
  }
body.home-v23-page #page-home .home-v23-scene-nav button.is-active{
    opacity:1;
    color:var(--home-accent);
  }
body.home-v23-page #page-home .home-v23-scene-nav button.is-active i{
    width:32px;
  }
body.home-v23-page.home-v23-at-top #page-home .home-v23-scene-nav{
    --home-muted:rgba(255,255,255,.62);
    --home-accent:#ff5a84;
  }
/* Micro transition inside each full-screen panel. */
body.home-v23-page #page-home .home-v23-scene[data-home-scene]:not(.is-current)>.home-v23-wide-head,body.home-v23-page #page-home .home-v23-scene[data-home-scene]:not(.is-current)>.home-v23-member-carousel,body.home-v23-page #page-home .home-v23-scene[data-home-scene]:not(.is-current)>.home-v23-member-pager,body.home-v23-page #page-home .home-v23-scene[data-home-scene]:not(.is-current)>.home-v23-vod-grid,body.home-v23-page #page-home .home-v23-scene[data-home-scene]:not(.is-current)>.home-v23-archive-compact{
    opacity:.72;
    transform:translateY(10px) scale(.992);
  }
body.home-v23-page #page-home .home-v23-scene>.home-v23-wide-head,body.home-v23-page #page-home .home-v23-scene>.home-v23-member-carousel,body.home-v23-page #page-home .home-v23-scene>.home-v23-member-pager,body.home-v23-page #page-home .home-v23-scene>.home-v23-vod-grid,body.home-v23-page #page-home .home-v23-scene>.home-v23-archive-compact{
    transition:opacity .42s ease,transform .58s cubic-bezier(.16,1,.3,1);
  }
/* The overview itself is already divided into three columns. Make the
     boundaries a little stronger so it reads as one dedicated screen. */
body.home-v23-page #page-home .home-v23-overview .home-v23-section+.home-v23-section{
    border-left-color:color-mix(in srgb,var(--home-line) 135%,transparent);
  }}
/* Tablet/mobile keeps natural document scrolling. Full-screen wheel locking
   would make compact screens harder to use. */
@media (max-width:900px), (prefers-reduced-motion:reduce){html.home-v23-snap{scroll-snap-type:none!important}
body.home-v23-page #page-home .home-v23-scene-nav{display:none!important}
body.home-v23-page #page-home .home-v23-scene{scroll-snap-align:none!important}
body.home-v23-page #page-home .home-v23-archive-compact{margin-top:38px}}
/* ============================================================
   V24.19 · HOME FULL-VIEWPORT SCENES
   - keep v24.17 wheel/snap scene behavior
   - make every desktop scene use the viewport instead of a capped center column
   - turn sparse overview into three deliberate full-height panels
   ============================================================ */
@media (min-width:901px){body.home-v23-page #page-home,body.home-v23-page #page-home .home-v23,body.home-v23-page #page-home .home-v23-content{
    width:100%!important;
    max-width:none!important;
  }
/* Break out of any old centered/max-width wrapper at every desktop resolution. */
body.home-v23-page #page-home .home-v23-hero-inner,body.home-v23-page #page-home .home-v23-overview,body.home-v23-page #page-home .home-v23-members,body.home-v23-page #page-home .home-v23-vods{
    box-sizing:border-box!important;
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding-left:clamp(24px,2.4vw,64px)!important;
    padding-right:clamp(24px,2.4vw,64px)!important;
  }
body.home-v23-page #page-home .home-v23-hero-inner{
    padding-top:118px!important;
    padding-bottom:64px!important;
  }
/* Overview: fill the scene horizontally and vertically instead of floating in the middle. */
body.home-v23-page #page-home .home-v23-overview{
    grid-template-columns:minmax(250px,.92fr) minmax(560px,1.62fr) minmax(280px,1.02fr)!important;
    gap:clamp(14px,1.35vw,28px)!important;
    align-items:stretch!important;
    align-content:center!important;
    border:0!important;
  }
body.home-v23-page #page-home .home-v23-overview .home-v23-section{
    position:relative;
    min-width:0!important;
    min-height:clamp(500px,64svh,720px)!important;
    padding:clamp(24px,2vw,34px)!important;
    border:1px solid color-mix(in srgb,var(--home-line) 112%,transparent)!important;
    border-radius:clamp(20px,1.5vw,28px)!important;
    background:
      radial-gradient(100% 70% at 50% 0%,color-mix(in srgb,var(--home-accent) 5%,transparent),transparent 64%),
      color-mix(in srgb,var(--home-bg) 90%,var(--home-text) 1.5%)!important;
    overflow:hidden;
    display:flex!important;
    flex-direction:column;
    justify-content:flex-start!important;
  }
body.home-v23-page #page-home .home-v23-overview .home-v23-section+.home-v23-section{
    border-left:1px solid color-mix(in srgb,var(--home-line) 112%,transparent)!important;
  }
/* Quiet oversized scene marks make the empty area feel intentional rather than blank. */
body.home-v23-page #page-home .home-v23-overview .home-v23-section::after{
    position:absolute;
    right:clamp(18px,1.8vw,34px);
    bottom:clamp(12px,1.5vw,26px);
    z-index:0;
    color:color-mix(in srgb,var(--home-text) 4.5%,transparent);
    font-size:clamp(66px,7vw,142px);
    line-height:.82;
    font-weight:950;
    letter-spacing:-.08em;
    pointer-events:none;
    user-select:none;
  }
body.home-v23-page #page-home .home-v23-today::after{content:"01"}
body.home-v23-page #page-home .home-v23-onair::after{content:"02"}
body.home-v23-page #page-home .home-v23-activity::after{content:"03"}
body.home-v23-page #page-home .home-v23-overview .home-v23-section>header,body.home-v23-page #page-home .home-v23-overview .home-v23-section>.home-v23-schedule-list,body.home-v23-page #page-home .home-v23-overview .home-v23-section>.home-v23-onair-grid,body.home-v23-page #page-home .home-v23-overview .home-v23-section>.home-v23-activity-list,body.home-v23-page #page-home .home-v23-overview .home-v23-section>.home-v23-empty{
    position:relative;
    z-index:1;
  }
body.home-v23-page #page-home .home-v23-section header,body.home-v23-page #page-home .home-v23-wide-head{
    margin-bottom:clamp(20px,2vh,30px)!important;
  }
body.home-v23-page #page-home .home-v23-section h2,body.home-v23-page #page-home .home-v23-wide-head h2{
    font-size:clamp(23px,1.55vw,32px)!important;
  }
/* Let the 2x2 live grid become the visual anchor of the NOW scene. */
body.home-v23-page #page-home .home-v23-onair-grid{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:clamp(12px,1vw,20px)!important;
  }
body.home-v23-page #page-home .home-v23-live-thumb{
    border-radius:clamp(13px,1vw,19px)!important;
  }
body.home-v23-page #page-home .home-v23-live-copy b{
    font-size:clamp(13px,.9vw,17px)!important;
  }
body.home-v23-page #page-home .home-v23-live-copy small{
    font-size:clamp(10px,.7vw,13px)!important;
  }
/* Give sparse side columns more visual rhythm. */
body.home-v23-page #page-home .home-v23-schedule-row{
    min-height:clamp(64px,7vh,82px)!important;
    grid-template-columns:clamp(52px,4vw,72px) minmax(0,1fr) 7px!important;
  }
body.home-v23-page #page-home .home-v23-schedule-row b{font-size:clamp(13px,.9vw,17px)!important}
body.home-v23-page #page-home .home-v23-schedule-row time{font-size:clamp(11px,.72vw,14px)!important}
body.home-v23-page #page-home .home-v23-activity-row{
    min-height:clamp(58px,6.2vh,74px)!important;
  }
body.home-v23-page #page-home .home-v23-activity-row b{font-size:clamp(11px,.78vw,14px)!important}
body.home-v23-page #page-home .home-v23-activity-row small{font-size:clamp(9px,.65vw,12px)!important}
/* MEMBERS/VOD scenes also use the whole viewport, not the old 1380px island. */
body.home-v23-page #page-home .home-v23-member-carousel{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
  }
body.home-v23-page #page-home .home-v23-member-strip{
    gap:clamp(14px,1.15vw,24px)!important;
    padding-left:clamp(6px,.5vw,12px)!important;
    padding-right:clamp(6px,.5vw,12px)!important;
  }
body.home-v23-page #page-home .home-v23-member{
    flex:1 0 clamp(108px,7.7vw,154px)!important;
    width:clamp(108px,7.7vw,154px)!important;
    min-width:clamp(108px,7.7vw,154px)!important;
  }
body.home-v23-page #page-home .home-v23-member>span{
    width:clamp(82px,5.9vw,116px)!important;
    height:clamp(82px,5.9vw,116px)!important;
  }
body.home-v23-page #page-home .home-v23-vod-grid{
    width:100%!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:clamp(14px,1.25vw,26px)!important;
  }
body.home-v23-page #page-home .home-v23-vod-card>span{
    border-radius:clamp(14px,1vw,20px)!important;
  }
/* Keep a little breathing room at normal FHD, but never fall back to a narrow fixed island. */
@media (max-width:1280px){body.home-v23-page #page-home .home-v23-overview{
      grid-template-columns:minmax(220px,.9fr) minmax(480px,1.5fr) minmax(240px,1fr)!important;
      gap:12px!important;
    }
body.home-v23-page #page-home .home-v23-overview .home-v23-section{
      padding:22px!important;
      min-height:560px!important;
    }}}
/* ========================================================================== 
   v24.20 — Current archive loading screen
   Visual-only refresh. Loader logic/progress timing is unchanged.
   ========================================================================== */
.app-loader{
  position:fixed!important;
  inset:0!important;
  z-index:9999!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 52%,rgba(255,67,111,.055),transparent 26%),
    linear-gradient(180deg,#070a10 0%,#080c13 52%,#070a10 100%)!important;
  color:#f6f8fb!important;
  transition:opacity .38s cubic-bezier(.22,.61,.36,1),visibility .38s ease,filter .38s ease!important;
}
/* The current site is editorial/minimal, so the old pink bubbles and avatar carousel are removed. */
.app-loader::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:50%!important;
  width:auto!important;
  height:1px!important;
  border-radius:0!important;
  background:linear-gradient(90deg,transparent 0%,rgba(148,163,184,.08) 20%,rgba(255,71,111,.26) 50%,rgba(148,163,184,.08) 80%,transparent 100%)!important;
  filter:none!important;
  pointer-events:none!important;
}
.app-loader::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px)!important;
  background-size:72px 72px!important;
  -webkit-mask-image:radial-gradient(circle at center,black 0%,transparent 66%)!important;
  mask-image:radial-gradient(circle at center,black 0%,transparent 66%)!important;
  filter:none!important;
  opacity:.58!important;
  pointer-events:none!important;
}
.app-loader.is-hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  filter:blur(5px)!important;
}
.archive-loader-shell{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  justify-items:stretch!important;
  width:min(620px,calc(100vw - 56px))!important;
  padding:6px 0 8px 28px!important;
  border-left:2px solid #ff476f!important;
  text-align:left!important;
}
.archive-loader-shell::before{
  content:"LOADING";
  position:absolute;
  right:0;
  top:3px;
  color:#788393;
  font-size:10px;
  font-weight:800;
  letter-spacing:.22em;
}
/* Kept in the DOM for the existing loader script, hidden in the new visual system. */
.archive-loader-avatar-wrap,.archive-loader-thumbs{
  display:none!important;
}
.archive-loader-kicker{
  display:block!important;
  margin:0 0 13px!important;
  color:#ff476f!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.24em!important;
}
.archive-loader-kicker::before{
  content:"00 / ";
  color:#ff476f;
}
.archive-loader-title{
  display:block!important;
  margin:0!important;
  color:#f5f7fb!important;
  font-size:clamp(34px,3.35vw,52px)!important;
  line-height:1.03!important;
  font-weight:900!important;
  letter-spacing:-.055em!important;
  text-shadow:none!important;
}
.archive-loader-status{
  display:block!important;
  margin:16px 0 0!important;
  color:#8b95a5!important;
  font-size:12px!important;
  line-height:1.55!important;
  font-weight:650!important;
  letter-spacing:-.01em!important;
}
.archive-loader-progress-row{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  margin-top:28px!important;
}
.archive-loader-bar{
  position:relative!important;
  height:2px!important;
  overflow:visible!important;
  border-radius:0!important;
  background:#202733!important;
  box-shadow:none!important;
}
.archive-loader-bar::after{
  content:"";
  position:absolute;
  inset:-7px 0;
  border-top:1px solid rgba(255,255,255,.025);
  border-bottom:1px solid rgba(255,255,255,.018);
  pointer-events:none;
}
.archive-loader-bar i{
  position:relative!important;
  display:block!important;
  width:0;
  height:2px!important;
  border-radius:0!important;
  background:#ff476f!important;
  box-shadow:0 0 18px rgba(255,71,111,.36)!important;
  transition:width .22s ease!important;
}
.archive-loader-bar i::after{
  content:"";
  position:absolute;
  right:-2px;
  top:50%;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#ff6b8c;
  box-shadow:0 0 14px rgba(255,71,111,.7);
  transform:translateY(-50%);
}
.archive-loader-progress-row>b{
  min-width:42px!important;
  color:#c8d0dc!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:800!important;
  font-variant-numeric:tabular-nums!important;
  letter-spacing:.08em!important;
  text-align:right!important;
}
@media (max-width:620px){.archive-loader-shell{
    width:calc(100vw - 40px)!important;
    padding-left:20px!important;
  }
.archive-loader-shell::before{display:none!important}
.archive-loader-title{font-size:36px!important}
.archive-loader-progress-row{margin-top:24px!important}}
@media (prefers-reduced-motion:reduce){.app-loader,.archive-loader-bar i{transition:none!important}}
/* ========================================================================== 
   v24.24 · HOME MEMBER SHOWCASE + HOME-ONLY ENGLISH EDITOR
   - 도감 레이아웃은 건드리지 않음
   - v24.17 한 화면 단위 스크롤 효과 복구
   ========================================================================== */
body.home-v23-page #page-home .home-v23-members .home-v23-wide-head{margin-bottom:clamp(14px,2vh,26px)!important}
body.home-v23-page #page-home .home-v23-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex:0 0 auto}
body.home-v23-page #page-home .home-v23-head-actions>button{flex:0 0 auto;padding:0;border:0;background:transparent;color:var(--home-muted);font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
body.home-v23-page #page-home .home-v23-head-actions>button:hover{color:var(--home-accent)}
body:not(.admin-mode) #page-home #homeV23EditEnglish{display:none!important}
body.admin-mode #page-home #homeV23EditEnglish{display:inline-flex!important;align-items:center;gap:6px;color:var(--home-accent)!important}
body.admin-mode #page-home #homeV23EditEnglish::before{content:"✎";font-size:11px}
body.home-v23-page #page-home .home-v23-member-carousel{width:100%!important;max-width:none!important;margin:0!important;padding:0 clamp(34px,2.8vw,58px)!important;box-sizing:border-box!important;overflow:visible!important}
body.home-v23-page #page-home .home-v23-member-strip{display:grid!important;grid-template-columns:repeat(var(--member-count,12),minmax(104px,1fr))!important;align-items:end!important;justify-content:stretch!important;gap:clamp(6px,.62vw,15px)!important;width:100%!important;min-width:0!important;padding:clamp(24px,3.2vh,38px) 2px clamp(16px,2.2vh,26px)!important;overflow-x:auto!important;overflow-y:visible!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important}
body.home-v23-page #page-home .home-v23-member-strip::-webkit-scrollbar{display:none!important}
body.home-v23-page #page-home .home-v23-member-carousel.is-all-visible .home-v23-member-strip{justify-content:stretch!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;min-width:104px!important;width:auto!important;min-height:clamp(198px,21vh,238px)!important;margin:0!important;padding:0 3px 8px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;color:var(--home-text)!important;text-align:center!important;scroll-snap-align:center!important;transform:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{position:absolute!important;z-index:0!important;left:50%!important;top:0!important;display:block!important;width:max-content!important;max-width:184%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;transform:translateX(-50%)!important;overflow:hidden!important;border:0!important;border-radius:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:rgba(239,190,255,.075)!important;-webkit-text-stroke:1px rgba(255,132,196,.18)!important;text-shadow:0 0 22px rgba(205,91,255,.07),0 0 34px rgba(255,76,144,.045)!important;font-size:clamp(24px,1.75vw,40px)!important;font-weight:950!important;line-height:.92!important;letter-spacing:-.07em!important;white-space:nowrap!important;text-overflow:ellipsis!important;text-transform:uppercase!important;pointer-events:none!important;user-select:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman[hidden]{display:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{position:relative!important;z-index:2!important;display:block!important;width:clamp(78px,5.25vw,112px)!important;height:clamp(78px,5.25vw,112px)!important;min-width:0!important;aspect-ratio:1/1!important;margin:clamp(38px,4.4vh,50px) auto 18px!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:50%!important;outline:0!important;background:transparent!important;box-shadow:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait::after{content:"";position:absolute;z-index:1;left:50%;bottom:-5px;width:96%;height:12px;transform:translateX(-50%);border:1px solid rgba(196,92,255,.52);border-radius:50%;background:radial-gradient(ellipse at center,rgba(207,87,255,.18) 0%,rgba(181,67,255,.06) 50%,transparent 74%);box-shadow:0 0 10px rgba(201,80,255,.18),0 0 23px rgba(255,70,140,.08);pointer-events:none}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait>img{position:relative!important;z-index:2!important;display:block!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:center!important;opacity:1!important;visibility:visible!important;filter:none!important;border:1px solid rgba(255,255,255,.62)!important;border-radius:50%!important;outline:1px solid rgba(225,111,255,.32)!important;background:var(--home-surface)!important;box-shadow:0 0 0 5px rgba(178,79,255,.04),0 0 18px rgba(217,83,255,.14),0 12px 26px rgba(0,0,0,.24)!important;transform:none!important;transition:transform .22s ease,box-shadow .22s ease,outline-color .22s ease!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom{position:relative!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;gap:5px!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>b{display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:0 2px!important;overflow:hidden!important;color:var(--home-text)!important;font-size:clamp(13px,.88vw,17px)!important;font-weight:850!important;line-height:1.15!important;letter-spacing:-.04em!important;white-space:nowrap!important;text-overflow:ellipsis!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>small{display:block!important;min-height:0!important;margin:0!important;padding:0!important;color:color-mix(in srgb,var(--home-muted) 88%,transparent)!important;font-size:11px!important;font-weight:650!important;line-height:1.2!important;letter-spacing:0!important}
@media (hover:hover){body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase:hover{transform:none!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase:hover>.home-v23-member-portrait>img,body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase:focus-visible>.home-v23-member-portrait>img{transform:translateY(-5px) scale(1.035)!important;outline-color:rgba(255,118,190,.6)!important;box-shadow:0 0 0 5px rgba(210,83,255,.055),0 0 25px rgba(230,91,255,.2),0 16px 32px rgba(0,0,0,.3)!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase:hover>.home-v23-member-roman{color:rgba(239,190,255,.12)!important;-webkit-text-stroke-color:rgba(255,137,198,.29)!important}}
body.home-v23-page #page-home .home-v23-member-arrow{top:clamp(82px,9vh,102px)!important}
body.home-v23-page #page-home .home-v23-member-pager{margin-top:0!important;color:color-mix(in srgb,var(--home-muted) 76%,transparent)!important;font-size:9px!important}
html[data-theme="light"] body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{color:rgba(92,66,111,.05)!important;-webkit-text-stroke-color:rgba(184,92,149,.12)!important;text-shadow:none!important}
html[data-theme="light"] body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait>img{border-color:rgba(255,255,255,.96)!important;outline-color:rgba(197,77,163,.18)!important;box-shadow:0 0 0 5px rgba(197,77,163,.03),0 10px 25px rgba(78,55,86,.11)!important}
html[data-theme="light"] body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait::after{border-color:rgba(188,91,165,.32);background:radial-gradient(ellipse at center,rgba(218,113,182,.11),transparent 74%);box-shadow:0 0 14px rgba(188,91,165,.07)}
@media (min-width:1700px){body.home-v23-page #page-home .home-v23-member-strip{grid-template-columns:repeat(var(--member-count,12),minmax(0,1fr))!important}}
@media (max-width:1100px){body.home-v23-page #page-home .home-v23-member-carousel{padding:0 42px!important}
body.home-v23-page #page-home .home-v23-member-strip{grid-template-columns:repeat(var(--member-count,12),104px)!important;justify-content:start!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{min-width:104px!important}}
@media (max-width:680px){body.home-v23-page #page-home .home-v23-member-carousel{padding:0!important}
body.home-v23-page #page-home .home-v23-member-strip{grid-template-columns:repeat(var(--member-count,12),94px)!important;gap:5px!important;padding:20px 42px 18px 2px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{min-width:94px!important;min-height:184px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{top:4px!important;font-size:23px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{width:72px!important;height:72px!important;margin-top:38px!important;margin-bottom:15px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>b{font-size:13px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>small{font-size:9px!important}
body.home-v23-page #page-home .home-v23-member-arrow{top:67px!important}}
/* Home-only English-name editor */
body.home-v23-member-name-open{overflow:hidden!important}
.home-v23-member-name-layer[hidden]{display:none!important}
body>.home-v23-member-name-layer{--home-accent:var(--v23-accent,#ff4f7d);--home-text:var(--v23-text,#171519);--home-muted:var(--v23-muted,#817b83);--home-line:var(--v23-line,#e6e2e6);--home-surface:var(--v23-surface,#fff);--home-bg:var(--v23-bg,#f7f6f7);position:fixed!important;z-index:2147483000!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100vw!important;height:100dvh!important;padding:24px!important;box-sizing:border-box!important;background:rgba(7,8,12,.68)!important;backdrop-filter:blur(14px)!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
body>.home-v23-member-name-layer.is-open{opacity:1;visibility:visible;pointer-events:auto}
html[data-theme="dark"] body>.home-v23-member-name-layer{--home-text:#f4f5f7;--home-muted:#969ba8;--home-line:rgba(255,255,255,.11);--home-surface:#10131a;--home-bg:#0b0e13}
.home-v23-member-name-panel{width:min(720px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid var(--home-line);border-radius:22px;background:var(--home-surface);color:var(--home-text);box-shadow:0 34px 100px rgba(0,0,0,.34);transform:translateY(14px) scale(.985);transition:transform .22s cubic-bezier(.16,1,.3,1)}
.home-v23-member-name-layer.is-open .home-v23-member-name-panel{transform:none}
.home-v23-member-name-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid var(--home-line)}
.home-v23-member-name-panel>header span{display:block;margin:0 0 6px;color:var(--home-accent);font-size:9px;font-weight:900;letter-spacing:.18em}
.home-v23-member-name-panel>header h2{margin:0;color:var(--home-text)!important;font-size:24px;font-weight:900;letter-spacing:-.04em}
.home-v23-member-name-panel>header p{margin:7px 0 0;color:var(--home-muted)!important;font-size:10px;line-height:1.55}
.home-v23-member-name-panel>header>button{flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid var(--home-line);border-radius:50%;background:transparent;color:var(--home-text);font-size:20px;cursor:pointer}
#homeV23MemberNameForm{padding:20px 26px 26px}
.home-v23-member-name-rows{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.home-v23-member-name-row{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(118px,150px);align-items:center;gap:10px;padding:10px;border:1px solid var(--home-line);border-radius:14px;background:var(--home-bg)}
.home-v23-member-name-row>img{width:42px;height:42px;border-radius:50%;object-fit:cover;display:block;background:var(--home-surface)}
.home-v23-member-name-row>span{min-width:0}
.home-v23-member-name-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--home-text);font-size:12px}
.home-v23-member-name-row small{display:block;margin-top:3px;color:var(--home-muted);font-size:9px}
.home-v23-member-name-row input{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--home-line);border-radius:10px;background:var(--home-surface);color:var(--home-text);padding:9px 10px;font-size:11px;font-weight:800;text-transform:uppercase;outline:none}
.home-v23-member-name-row input:focus{border-color:color-mix(in srgb,var(--home-accent) 70%,var(--home-line));box-shadow:0 0 0 3px color-mix(in srgb,var(--home-accent) 10%,transparent)}
.home-v23-member-name-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.home-v23-member-name-actions button{min-width:84px;height:40px;border-radius:999px;font-size:11px;font-weight:850;cursor:pointer}
.home-v23-member-name-actions .secondary{border:1px solid var(--home-line);background:transparent;color:var(--home-text)}
.home-v23-member-name-actions .primary{border:1px solid var(--home-accent);background:var(--home-accent);color:#fff}
@media(max-width:720px){.home-v23-member-name-rows{grid-template-columns:1fr}
.home-v23-member-name-panel{width:min(560px,calc(100vw - 24px))}
.home-v23-member-name-row{grid-template-columns:38px minmax(0,1fr) minmax(108px,140px)}}
#page-profiles #jintaEditMember{justify-self:end!important;align-self:center!important;width:auto!important;min-width:max-content!important;max-width:none!important;flex:0 0 auto!important}
body:not(.admin-mode) #page-profiles #jintaEditMember{display:none!important}
body.admin-mode #page-profiles #jintaEditMember{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:8px 13px!important}
/* ========================================================================== 
   v24.25 · RESPONSIVE MEMBER CAROUSEL DENSITY
   - FHD: 7명, QHD: 9명, 4K: 11명
   - 작은 화면에서는 멤버 슬롯을 줄이고 가로 캐러셀 사용
   - 큰 화면에서는 간격을 무한히 벌리지 않고 프로필 자체를 확대
   ========================================================================== */
body.home-v23-page #page-home .home-v23-member-carousel{
  --member-gap:18px;
  position:relative!important;
  width:min(100%,1650px)!important;
  max-width:1650px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:48px!important;
  padding-right:48px!important;
  box-sizing:border-box!important;
}
body.home-v23-page #page-home .home-v23-member-strip{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:var(--member-gap)!important;
  width:100%!important;
  min-width:0!important;
  padding:30px 2px 24px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scroll-snap-type:x mandatory!important;
  scroll-padding-inline:2px!important;
  overscroll-behavior-x:contain!important;
  scrollbar-width:none!important;
}
body.home-v23-page #page-home .home-v23-member-strip::-webkit-scrollbar{display:none!important}
body.home-v23-page #page-home .home-v23-member-carousel.is-all-visible .home-v23-member-strip{justify-content:center!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
  flex:0 0 calc(16.666667% - 15px)!important;
  width:calc(16.666667% - 15px)!important;
  min-width:0!important;
  max-width:none!important;
  min-height:218px!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{
  left:50%!important;
  width:calc(100% - 8px)!important;
  max-width:calc(100% - 8px)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:clamp(23px,1.65vw,34px)!important;
  letter-spacing:-.065em!important;
}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{
  width:104px!important;
  height:104px!important;
  margin-top:44px!important;
  margin-bottom:17px!important;
}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>b{font-size:15px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>small{font-size:10px!important}
body.home-v23-page #page-home .home-v23-member-arrow{top:92px!important}
/* 1600~2199px: FHD 계열 — 7명 */
@media (min-width:1600px) and (max-width:2199px){body.home-v23-page #page-home .home-v23-member-carousel{
    --member-gap:18px;
    width:min(100%,1740px)!important;
    max-width:1740px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex-basis:calc(14.285714% - 15.4286px)!important;
    width:calc(14.285714% - 15.4286px)!important;
    min-height:228px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{
    width:110px!important;
    height:110px!important;
  }}
/* 2200~2999px: QHD 계열 — 9명 */
@media (min-width:2200px) and (max-width:2999px){body.home-v23-page #page-home .home-v23-member-carousel{
    --member-gap:20px;
    width:min(100%,2260px)!important;
    max-width:2260px!important;
    padding-left:52px!important;
    padding-right:52px!important;
  }
body.home-v23-page #page-home .home-v23-member-strip{padding-top:36px!important;padding-bottom:28px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex-basis:calc(11.111111% - 17.7778px)!important;
    width:calc(11.111111% - 17.7778px)!important;
    min-height:248px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{font-size:clamp(28px,1.42vw,38px)!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{
    width:126px!important;
    height:126px!important;
    margin-top:50px!important;
    margin-bottom:19px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>b{font-size:16px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>small{font-size:11px!important}
body.home-v23-page #page-home .home-v23-member-arrow{top:106px!important}}
/* 3000px 이상: 4K 계열 — 11명 전체 + 시각 요소 확대, 최대 폭 제한 */
@media (min-width:3000px){body.home-v23-page #page-home .home-v23-members{
    gap:clamp(28px,2.2vh,48px)!important;
  }
body.home-v23-page #page-home .home-v23-members .home-v23-wide-head{
    width:min(100%,2720px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
body.home-v23-page #page-home .home-v23-member-carousel{
    --member-gap:24px;
    width:min(100%,2720px)!important;
    max-width:2720px!important;
    padding-left:56px!important;
    padding-right:56px!important;
  }
body.home-v23-page #page-home .home-v23-member-strip{
    padding-top:44px!important;
    padding-bottom:34px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex-basis:calc(9.090909% - 21.8182px)!important;
    width:calc(9.090909% - 21.8182px)!important;
    min-height:292px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{
    width:calc(100% - 4px)!important;
    max-width:calc(100% - 4px)!important;
    font-size:42px!important;
    line-height:.94!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-portrait{
    width:150px!important;
    height:150px!important;
    margin-top:62px!important;
    margin-bottom:22px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>b{font-size:18px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-bottom>small{font-size:12px!important}
body.home-v23-page #page-home .home-v23-member-arrow{top:128px!important}}
/* 노트북/태블릿 폭: 6명 유지, 모바일에서는 기존보다 더 작은 고정 슬롯 */
@media (max-width:1599px){body.home-v23-page #page-home .home-v23-member-carousel{
    --member-gap:15px;
    width:min(100%,1440px)!important;
    max-width:1440px!important;
    padding-left:44px!important;
    padding-right:44px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex-basis:calc(16.666667% - 12.5px)!important;
    width:calc(16.666667% - 12.5px)!important;
  }}
@media (max-width:900px){body.home-v23-page #page-home .home-v23-member-carousel{--member-gap:12px;padding-left:40px!important;padding-right:40px!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex-basis:calc(20% - 9.6px)!important;
    width:calc(20% - 9.6px)!important;
    min-width:118px!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase>.home-v23-member-roman{font-size:23px!important}}
@media (max-width:920px){#page-profiles .dogam5-jinho-facts{grid-template-columns:repeat(2,minmax(100px,1fr))}}
@media (max-width:680px){body.home-v23-page #page-home .home-v23-member-carousel{--member-gap:10px;padding-left:34px!important;padding-right:34px!important}
body.home-v23-page #page-home .home-v23-member-strip{padding-left:0!important;padding-right:0!important}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    flex:0 0 112px!important;
    width:112px!important;
    min-width:112px!important;
  }}
/* ========================================================================== 
   v24.26 · MEMBER CAROUSEL TRUE PAGING
   - 멤버 1칸 단위 snap을 제거하고 페이지 컨테이너 단위로만 snap
   - FHD 7명 / QHD 9명 / 4K 11명 페이지 단위 이동
   ========================================================================== */
body.home-v23-page #page-home .home-v23-member-strip{
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
}
body.home-v23-page #page-home .home-v23-member-page{
  flex:0 0 100%!important;
  width:100%!important;
  min-width:100%!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(var(--member-page-size,6),minmax(0,1fr))!important;
  align-items:end!important;
  column-gap:var(--member-gap)!important;
  padding:0!important;
  scroll-snap-align:start!important;
  scroll-snap-stop:always!important;
}
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:none!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
}
body.home-v23-page #page-home .home-v23-member-pager{
  min-width:44px!important;
  text-align:center!important;
  font-size:10px!important;
  letter-spacing:.12em!important;
  font-weight:800!important;
}
@media (max-width:920px){#page-profiles .dogam5-jinho-facts{grid-template-columns:repeat(2,minmax(100px,1fr))}}
@media (max-width:680px){body.home-v23-page #page-home .home-v23-member-page{
    grid-template-columns:repeat(var(--member-page-size,3),minmax(0,1fr))!important;
  }
body.home-v23-page #page-home .home-v23-member.home-v23-member-showcase{
    min-width:0!important;
    width:100%!important;
  }}
/* ============================================================
   v24.27 · DOGAM V5 — CLICKABLE ROSTER + LIVE PREVIEW
   5번 시안 기반: 진호 상단 쇼케이스 + 좌측 멤버 로스터 + 우측 프로필 프리뷰
   ============================================================ */
#page-profiles.dogam-v5-page{
  --d5-bg:#090d15;
  --d5-panel:#0f1623;
  --d5-panel-2:#121b29;
  --d5-line:rgba(151,169,197,.18);
  --d5-line-strong:rgba(255,112,154,.44);
  --d5-text:#f3f6fb;
  --d5-muted:#8793a7;
  --d5-pink:#ff6f9c;
  --d5-pink-soft:rgba(255,111,156,.12);
  --d5-mint:#74dfc2;
  position:relative!important;
  isolation:isolate;
  min-height:calc(100vh - var(--v23-header-height,66px));
  padding:clamp(28px,3.2vw,54px) clamp(22px,4vw,70px) 84px!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 72% 22%,rgba(110,126,207,.075),transparent 31%),
    radial-gradient(circle at 18% 70%,rgba(255,111,156,.045),transparent 28%),
    var(--d5-bg)!important;
  color:var(--d5-text)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
#page-profiles.dogam-v5-page::before,#page-profiles.dogam-v5-page::after{display:none!important}
html[data-theme="light"] #page-profiles.dogam-v5-page{
  --d5-bg:#f5f7fb;
  --d5-panel:#ffffff;
  --d5-panel-2:#f8faff;
  --d5-line:rgba(39,51,73,.12);
  --d5-line-strong:rgba(222,70,119,.32);
  --d5-text:#151a25;
  --d5-muted:#7a8494;
  --d5-pink:#df4b7d;
  --d5-pink-soft:rgba(223,75,125,.08);
  --d5-mint:#31b993;
  background:radial-gradient(circle at 72% 18%,rgba(113,126,205,.07),transparent 34%),var(--d5-bg)!important;
}
#page-profiles .dogam5-page-head{
  width:min(1420px,100%);margin:0 auto 22px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
}
#page-profiles .dogam5-page-head .eyebrow{display:block;margin-bottom:7px;color:var(--d5-pink)!important;font-size:10px;font-weight:950;letter-spacing:.23em}
#page-profiles .dogam5-page-head h1{margin:0;color:var(--d5-text)!important;font-size:clamp(34px,3vw,50px);font-weight:950;line-height:1;letter-spacing:-.055em}
#page-profiles .dogam5-page-head p{margin:10px 0 0;color:var(--d5-muted)!important;font-size:12px;line-height:1.6}
#page-profiles .dogam5-page-head .btn{border-radius:12px!important;padding:10px 15px!important;background:linear-gradient(135deg,#70cf93,#79dfaa)!important;border:0!important;color:#092016!important;box-shadow:0 10px 28px rgba(71,190,128,.16)!important;font-weight:900!important}
#page-profiles .dogam5-shell{width:min(1420px,100%);margin:0 auto;display:flex;flex-direction:column;gap:28px}
/* streamer showcase */
#page-profiles .dogam5-jinho{
  position:relative;display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);min-height:270px;overflow:hidden;
  border:1px solid color-mix(in srgb,var(--d5-pink) 28%,var(--d5-line));border-radius:24px;background:linear-gradient(115deg,color-mix(in srgb,var(--d5-pink) 5%,var(--d5-panel)),var(--d5-panel) 55%,color-mix(in srgb,#7384c7 5%,var(--d5-panel)));box-shadow:0 24px 70px rgba(0,0,0,.12)
}
#page-profiles .dogam5-jinho::after{content:"";position:absolute;right:-55px;top:-90px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,111,156,.08),transparent 65%);pointer-events:none}
#page-profiles .dogam5-jinho-image{position:relative;min-height:270px;overflow:hidden;border-right:1px solid var(--d5-line);background:#080b11}
#page-profiles .dogam5-jinho-image img{display:block;width:100%;height:100%;min-height:270px;object-fit:cover;object-position:center;filter:saturate(.94) contrast(1.02)}
#page-profiles .dogam5-jinho-image::after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(transparent,rgba(7,10,16,.58));pointer-events:none}
#page-profiles .dogam5-jinho-image>span{position:absolute;z-index:2;left:18px;top:18px;display:grid;place-items:center;min-width:34px;height:28px;padding:0 9px;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:rgba(7,10,16,.48);backdrop-filter:blur(12px);color:#fff;font-size:11px;font-weight:950;letter-spacing:.1em}
#page-profiles .dogam5-jinho-copy{position:relative;z-index:2;align-self:center;padding:34px clamp(30px,4vw,62px)}
#page-profiles .dogam5-jinho-kicker{margin-bottom:8px;color:var(--d5-pink);font-size:10px;font-weight:950;letter-spacing:.22em}
#page-profiles .dogam5-jinho-name-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
#page-profiles .dogam5-jinho-name-row h2{margin:0;color:var(--d5-text)!important;font-size:clamp(38px,4vw,62px);font-weight:950;letter-spacing:-.06em;line-height:1}
#page-profiles .dogam5-jinho-name-row em{padding:6px 10px;border:1px solid color-mix(in srgb,var(--d5-pink) 40%,var(--d5-line));border-radius:999px;background:var(--d5-pink-soft);color:var(--d5-pink);font-size:10px;font-style:normal;font-weight:900}
#page-profiles .dogam5-jinho-copy>p{max-width:620px;margin:13px 0 22px;color:color-mix(in srgb,var(--d5-text) 72%,var(--d5-muted))!important;font-size:13px;line-height:1.72}
#page-profiles .dogam5-jinho-facts{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:14px 28px;max-width:690px}
#page-profiles .dogam5-jinho-facts div{display:flex;flex-direction:column;gap:4px;min-width:0}
#page-profiles .dogam5-jinho-facts span{color:var(--d5-pink)!important;font-size:9px;font-weight:900;letter-spacing:.12em}
#page-profiles .dogam5-jinho-facts strong{color:var(--d5-text)!important;font-size:12px;font-weight:800}
#page-profiles .dogam5-jinho-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
#page-profiles .dogam5-jinho-actions a,#page-profiles .dogam5-jinho-actions button{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--d5-line);border-radius:10px;background:rgba(255,255,255,.025);color:var(--d5-text)!important;text-decoration:none;font-size:10px;font-weight:850;cursor:pointer;transition:.2s ease}
#page-profiles .dogam5-jinho-actions a:hover,#page-profiles .dogam5-jinho-actions button:hover{border-color:var(--d5-pink);transform:translateY(-1px)}
#page-profiles .dogam5-jinho-wordmark{position:absolute;z-index:0;right:38px;top:50%;transform:translateY(-50%);color:rgba(149,161,193,.035);font-size:clamp(54px,7vw,106px);font-weight:1000;line-height:.78;letter-spacing:-.07em;text-align:right;pointer-events:none;user-select:none}
/* split workspace */
#page-profiles .dogam5-workspace{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px;align-items:stretch}
#page-profiles .dogam5-roster-panel,#page-profiles .dogam5-preview{border:1px solid var(--d5-line);border-radius:22px;background:linear-gradient(155deg,var(--d5-panel),color-mix(in srgb,#7587c9 3%,var(--d5-panel)));box-shadow:0 24px 65px rgba(0,0,0,.10)}
#page-profiles .dogam5-roster-panel{padding:22px;min-width:0}
#page-profiles .dogam5-roster-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
#page-profiles .dogam5-roster-title>div>span{display:block;margin-bottom:5px;color:var(--d5-pink);font-size:9px;font-weight:950;letter-spacing:.18em}
#page-profiles .dogam5-roster-title h2{margin:0;color:var(--d5-text)!important;font-size:30px;font-weight:950;letter-spacing:-.05em}
#page-profiles .dogam5-roster-title p{margin:7px 0 0;color:var(--d5-muted)!important;font-size:10px;line-height:1.55}
#page-profiles .dogam5-roster-title>strong{flex:0 0 auto;margin-top:4px;color:var(--d5-muted)!important;font-size:10px;font-weight:900}
#page-profiles .dogam5-toolbar{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}
#page-profiles .dogam5-search{height:38px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--d5-line);border-radius:11px;background:color-mix(in srgb,var(--d5-panel-2) 88%,transparent)}
#page-profiles .dogam5-search>span{color:var(--d5-muted);font-size:17px}
#page-profiles .dogam5-search input{width:100%;min-width:0;border:0!important;outline:0!important;background:transparent!important;color:var(--d5-text)!important;font-size:11px!important;box-shadow:none!important}
#page-profiles .dogam5-search input::placeholder{color:color-mix(in srgb,var(--d5-muted) 74%,transparent)}
#page-profiles .dogam5-filters{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
#page-profiles .dogam5-filters::-webkit-scrollbar{display:none}
#page-profiles .dogam5-filters button{flex:0 0 auto;padding:6px 9px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--d5-muted)!important;font-size:9px;font-weight:850;cursor:pointer}
#page-profiles .dogam5-filters button.active{border-color:color-mix(in srgb,var(--d5-pink) 34%,var(--d5-line));background:var(--d5-pink-soft);color:var(--d5-pink)!important}
#page-profiles .dogam5-roster-list{display:flex;flex-direction:column;gap:7px;min-height:398px}
#page-profiles .dogam5-roster-item{position:relative;display:grid;grid-template-columns:36px 31px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:44px;padding:4px 10px 4px 5px;border:1px solid var(--d5-line);border-radius:10px;background:color-mix(in srgb,var(--d5-panel-2) 76%,transparent);color:var(--d5-text)!important;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
#page-profiles .dogam5-roster-item::after{content:"";position:absolute;right:-1px;top:50%;width:0;height:1px;background:var(--d5-pink);transform:translateY(-50%);transition:width .2s ease}
#page-profiles .dogam5-roster-item img{width:36px;height:36px;display:block;border-radius:9px;object-fit:cover;background:var(--d5-panel);border:1px solid rgba(255,255,255,.07)}
#page-profiles .dogam5-roster-no{color:var(--d5-muted)!important;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}
#page-profiles .dogam5-roster-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--d5-text)!important;font-size:12px;font-weight:850}
#page-profiles .dogam5-roster-item em{color:var(--d5-muted)!important;font-size:9px;font-style:normal;font-weight:850;white-space:nowrap}
#page-profiles .dogam5-roster-item:hover{transform:translateX(2px);border-color:color-mix(in srgb,var(--d5-pink) 28%,var(--d5-line));background:color-mix(in srgb,var(--d5-pink) 5%,var(--d5-panel-2))}
#page-profiles .dogam5-roster-item.active{border-color:var(--d5-pink);background:linear-gradient(90deg,var(--d5-pink-soft),color-mix(in srgb,var(--d5-panel-2) 86%,transparent));box-shadow:0 0 0 1px color-mix(in srgb,var(--d5-pink) 22%,transparent),0 8px 24px rgba(0,0,0,.08)}
#page-profiles .dogam5-roster-item.active::after{width:13px}
#page-profiles .dogam5-roster-item.active em{color:var(--d5-pink)!important}
#page-profiles .dogam5-empty{display:grid;place-items:center;min-height:150px;padding:20px;border:1px dashed var(--d5-line);border-radius:12px;color:var(--d5-muted)!important;font-size:11px;text-align:center}
#page-profiles .dogam5-pagination{display:flex;justify-content:center;align-items:center;gap:13px;margin-top:14px}
#page-profiles .dogam5-pagination button{width:30px;height:30px;border:1px solid var(--d5-line);border-radius:50%;background:transparent;color:var(--d5-text);font-size:17px;cursor:pointer}
#page-profiles .dogam5-pagination button:disabled{opacity:.26;cursor:default}
#page-profiles .dogam5-pagination span{min-width:42px;color:var(--d5-muted)!important;font-size:10px;font-weight:850;text-align:center;font-variant-numeric:tabular-nums}
#page-profiles .dogam5-pagination.is-single{opacity:.45}
/* preview */
#page-profiles .dogam5-preview{--dogam-member-accent:var(--d5-mint);position:relative;overflow:hidden;min-height:592px;padding:20px;border-color:color-mix(in srgb,var(--dogam-member-accent) 34%,var(--d5-line));background:radial-gradient(circle at 32% 45%,color-mix(in srgb,var(--dogam-member-accent) 6%,transparent),transparent 31%),linear-gradient(155deg,var(--d5-panel),color-mix(in srgb,var(--dogam-member-accent) 2%,var(--d5-panel)))}
#page-profiles .dogam5-preview::before{content:"";position:absolute;inset:0;opacity:.15;pointer-events:none;background-image:radial-gradient(circle,rgba(137,155,184,.42) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(90deg,#000,transparent 62%)}
#page-profiles .dogam5-preview-top{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center}
#page-profiles .dogam5-preview-number{display:grid;place-items:center;min-width:38px;height:32px;padding:0 10px;border:1px solid color-mix(in srgb,var(--dogam-member-accent) 40%,var(--d5-line));border-radius:10px;background:color-mix(in srgb,var(--dogam-member-accent) 7%,var(--d5-panel));color:var(--dogam-member-accent)!important;font-size:11px;font-weight:950;letter-spacing:.08em}
#page-profiles .dogam5-edit{min-height:34px;padding:0 12px;border:1px solid var(--d5-line);border-radius:10px;background:color-mix(in srgb,var(--d5-panel-2) 88%,transparent);color:var(--d5-text)!important;font-size:10px;font-weight:850;cursor:pointer}
#page-profiles .dogam5-edit:hover{border-color:var(--d5-pink);color:var(--d5-pink)!important}
#page-profiles .dogam5-preview-main{position:relative;z-index:2;display:grid;grid-template-columns:minmax(330px,48%) minmax(0,52%);gap:clamp(24px,3vw,54px);align-items:center;min-height:490px;padding:14px clamp(8px,2vw,26px) 4px}
#page-profiles .dogam5-preview-visual{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:440px;width:100%;margin:0 auto}
#page-profiles .dogam5-preview-orbit{position:absolute;inset:5%;border:1px solid color-mix(in srgb,var(--dogam-member-accent) 58%,transparent);border-radius:50%;box-shadow:0 0 0 8px color-mix(in srgb,var(--dogam-member-accent) 4%,transparent),0 0 80px color-mix(in srgb,var(--dogam-member-accent) 10%,transparent)}
#page-profiles .dogam5-preview-orbit::before,#page-profiles .dogam5-preview-orbit::after{content:"";position:absolute;border-radius:50%;border:1px solid color-mix(in srgb,var(--dogam-member-accent) 14%,transparent)}
#page-profiles .dogam5-preview-orbit::before{inset:-5%}
#page-profiles .dogam5-preview-orbit::after{inset:7%}
#page-profiles .dogam5-preview-glow{position:absolute;width:70%;height:70%;border-radius:50%;background:color-mix(in srgb,var(--dogam-member-accent) 12%,transparent);filter:blur(55px)}
#page-profiles .dogam5-preview-visual img{position:relative;z-index:2;display:block;width:84%;height:84%;border-radius:50%;object-fit:cover;object-position:center;background:color-mix(in srgb,var(--dogam-member-accent) 6%,var(--d5-panel-2));border:2px solid color-mix(in srgb,var(--dogam-member-accent) 58%,rgba(255,255,255,.2));box-shadow:0 22px 60px rgba(0,0,0,.22)}
#page-profiles .dogam5-preview-copy{min-width:0;padding-right:8px}
#page-profiles .dogam5-preview-kicker{margin-bottom:8px}
#page-profiles .dogam5-preview-kicker span{display:inline-flex;padding:6px 10px;border:1px solid color-mix(in srgb,var(--d5-pink) 32%,var(--d5-line));border-radius:999px;background:var(--d5-pink-soft);color:var(--d5-pink)!important;font-size:10px;font-weight:900}
#page-profiles .dogam5-preview-copy h2{margin:0;color:var(--d5-text)!important;font-size:clamp(40px,4.2vw,66px);font-weight:950;line-height:1;letter-spacing:-.065em}
#page-profiles .dogam5-preview-intro{max-width:560px;margin:13px 0 22px;color:color-mix(in srgb,var(--d5-text) 70%,var(--d5-muted))!important;font-size:12px;line-height:1.7}
#page-profiles .dogam5-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--d5-line);border-bottom:1px solid var(--d5-line)}
#page-profiles .dogam5-facts>div{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:8px 4px;border-bottom:1px solid var(--d5-line)}
#page-profiles .dogam5-facts>div:nth-last-child(-n+2){border-bottom:0}
#page-profiles .dogam5-facts>div:nth-child(odd){padding-right:14px;border-right:1px solid var(--d5-line)}
#page-profiles .dogam5-facts>div:nth-child(even){padding-left:14px}
#page-profiles .dogam5-facts span{color:var(--d5-muted)!important;font-size:9px;font-weight:800}
#page-profiles .dogam5-facts strong{overflow:hidden;text-overflow:ellipsis;color:var(--d5-text)!important;font-size:11px;font-weight:850;white-space:nowrap}
#page-profiles .dogam5-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
#page-profiles .dogam5-tags span{padding:6px 9px;border:1px solid var(--d5-line);border-radius:999px;color:color-mix(in srgb,var(--dogam-member-accent) 65%,var(--d5-text))!important;font-size:9px;font-weight:800}
#page-profiles .dogam5-social{margin-top:18px}
#page-profiles .dogam5-social>span{display:block;margin-bottom:8px;color:var(--d5-muted)!important;font-size:9px;font-weight:950;letter-spacing:.18em}
#page-profiles .dogam5-links{display:flex;gap:7px;flex-wrap:wrap}
#page-profiles .dogam5-platform{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border:1px solid var(--d5-line);border-radius:9px;background:color-mix(in srgb,var(--d5-panel-2) 82%,transparent);color:var(--d5-text)!important;text-decoration:none;font-size:9px;font-weight:850;transition:.18s ease}
#page-profiles .dogam5-platform i{font-style:normal;color:var(--dogam-member-accent)!important;font-size:9px;font-weight:950}
#page-profiles .dogam5-platform:hover{border-color:var(--dogam-member-accent);transform:translateY(-1px)}
#page-profiles .dogam5-preview-nav{position:relative;z-index:3;display:flex;justify-content:flex-end;gap:7px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--d5-line) 72%,transparent)}
#page-profiles .dogam5-preview-nav button{min-height:32px;padding:0 10px;border:1px solid var(--d5-line);border-radius:9px;background:transparent;color:var(--d5-muted)!important;font-size:9px;font-weight:850;cursor:pointer}
#page-profiles .dogam5-preview-nav button:hover{color:var(--d5-text)!important;border-color:color-mix(in srgb,var(--dogam-member-accent) 45%,var(--d5-line))}
#page-profiles .dogam5-preview.dogam5-swap .dogam5-preview-visual img{animation:dogam5PortraitSwap .42s cubic-bezier(.16,1,.3,1)}
#page-profiles .dogam5-preview.dogam5-swap .dogam5-preview-copy{animation:dogam5CopySwap .38s cubic-bezier(.16,1,.3,1)}
@keyframes dogam5PortraitSwap{from{opacity:.28;transform:scale(.965)}to{opacity:1;transform:none}}
@keyframes dogam5CopySwap{from{opacity:.2;transform:translateX(12px)}to{opacity:1;transform:none}}
/* keep the existing editor modal intact but make its trigger visible in admin mode */
body:not(.admin-mode) #page-profiles .dogam5-edit,body:not(.admin-mode) #page-profiles [data-edit-jinho]{display:none!important}
body.admin-mode #page-profiles .dogam5-edit{display:inline-flex!important;align-items:center!important}
body.admin-mode #page-profiles [data-edit-jinho]{display:inline-flex!important}
@media (max-width:1180px){#page-profiles .dogam5-workspace{grid-template-columns:minmax(270px,320px) minmax(0,1fr)}
#page-profiles .dogam5-preview-main{grid-template-columns:minmax(280px,44%) minmax(0,56%);gap:24px}
#page-profiles .dogam5-preview{padding:16px}
#page-profiles .dogam5-facts>div{grid-template-columns:72px minmax(0,1fr)}}
@media (max-width:920px){#page-profiles.dogam-v5-page{padding:24px 16px 72px!important}
#page-profiles .dogam5-jinho{grid-template-columns:230px minmax(0,1fr)}
#page-profiles .dogam5-workspace{grid-template-columns:1fr}
#page-profiles .dogam5-roster-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}
#page-profiles .dogam5-preview-main{grid-template-columns:minmax(300px,42%) minmax(0,58%)}}
@media (max-width:920px){#page-profiles .dogam5-jinho-facts{grid-template-columns:repeat(2,minmax(100px,1fr))}}
@media (max-width:680px){#page-profiles .dogam5-page-head{align-items:flex-start}
#page-profiles .dogam5-page-head p{max-width:250px}
#page-profiles .dogam5-jinho{grid-template-columns:1fr;min-height:0}
#page-profiles .dogam5-jinho-image{height:280px;min-height:0;border-right:0;border-bottom:1px solid var(--d5-line)}
#page-profiles .dogam5-jinho-image img{min-height:0;height:100%}
#page-profiles .dogam5-jinho-copy{padding:24px 20px 28px}
#page-profiles .dogam5-jinho-wordmark{display:none}
#page-profiles .dogam5-roster-panel{padding:16px}
#page-profiles .dogam5-roster-list{grid-template-columns:1fr}
#page-profiles .dogam5-preview{padding:14px;min-height:0}
#page-profiles .dogam5-preview-main{grid-template-columns:1fr;min-height:0;padding:18px 2px 8px}
#page-profiles .dogam5-preview-visual{max-width:320px}
#page-profiles .dogam5-preview-copy h2{font-size:42px}
#page-profiles .dogam5-facts{grid-template-columns:1fr}
#page-profiles .dogam5-facts>div,#page-profiles .dogam5-facts>div:nth-child(odd),#page-profiles .dogam5-facts>div:nth-child(even){padding:8px 4px;border-right:0;border-bottom:1px solid var(--d5-line)}
#page-profiles .dogam5-facts>div:last-child{border-bottom:0}}
@media (prefers-reduced-motion:reduce){#page-profiles .dogam5-preview.dogam5-swap .dogam5-preview-visual img,#page-profiles .dogam5-preview.dogam5-swap .dogam5-preview-copy{animation:none!important}}
/* ============================================================
   v24.29 VOD ARCHIVE REDESIGN — option 01 editorial archive
   ============================================================ */
#page-vod.vod-library-page{
  padding:10px 0 96px!important;
}








































#page-vod .vod-library-thumb{
  background:var(--v23-surface-2)!important;
}
#page-vod .vod-library-thumb>em{
  left:10px!important;
  background:var(--v23-accent)!important;
}
#page-vod .vod-library-thumb>i{
  right:10px!important;
  background:rgba(12,13,16,.82)!important;
}
#page-vod .vod-library-copy{
  padding:14px 14px 15px!important;
}
#page-vod .vod-library-copy>strong{
  min-height:2.9em!important;
  color:var(--v23-text)!important;
  font-size:15px!important;
  line-height:1.45!important;
}
#page-vod .vod-library-copy>small{
  margin-top:8px!important;
  color:var(--v23-muted)!important;
  font-size:12px!important;
}
#page-vod .vod-library-copy>span{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:10px!important;
}
#page-vod .vod-library-copy>span i{
  padding:4px 8px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--v23-accent) 10%,var(--v23-surface-2))!important;
  color:var(--v23-accent)!important;
  font-size:12px!important;
  font-style:normal!important;
  font-weight:800!important;
}
#page-vod .vod-library-empty{
  grid-column:1/-1!important;
  min-height:220px!important;
  border:1px dashed var(--v23-line)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--v23-surface) 96%,transparent)!important;
}
#page-vod .vod-pagination{
  margin-top:26px!important;
}
#page-vod .vod-pagination button{
  width:40px!important;
  height:40px!important;
  border:1px solid var(--v23-line)!important;
  border-radius:12px!important;
  background:color-mix(in srgb,var(--v23-surface) 96%,transparent)!important;
  color:var(--v23-text)!important;
}
#page-vod .vod-pagination button.active{
  background:var(--v23-accent)!important;
  border-color:var(--v23-accent)!important;
  color:#fff!important;
}
html[data-theme="dark"] #page-vod .vod-hero,html[data-theme="dark"] #page-vod .vod-toolbar,html[data-theme="dark"] #page-vod .vod-library-card,html[data-theme="dark"] #page-vod .vod-library-empty{
  box-shadow:none!important;
}
@media(max-width:768px){#page-vod.vod-library-page{padding:8px 10px 96px!important}

















#page-vod .vod-library-thumb{height:100%!important;min-height:104px!important;aspect-ratio:auto!important}
#page-vod .vod-library-copy{padding:10px!important}
#page-vod .vod-library-copy>strong{min-height:0!important;font-size:14px!important}}
/* ============================================================
   v24.30 LIVE · all-offline modern minimal state
   ============================================================ */
#page-live.live-hub-page{
  position:relative!important;
}
#page-live .live-extinct-overlay[hidden]{
  display:none!important;
}
#page-live .live-extinct-overlay{
  position:absolute!important;
  z-index:30!important;
  inset:104px 0 0!important;
  display:grid!important;
  place-items:center!important;
  min-height:clamp(430px,62vh,720px)!important;
  padding:36px 24px!important;
  pointer-events:none!important;
}
#page-live.is-all-offline #liveCardGrid{
  filter:blur(8px) brightness(.46) saturate(.58)!important;
  transform:translateZ(0)!important;
  opacity:.82!important;
  transition:filter .35s ease,opacity .35s ease!important;
  pointer-events:none!important;
  user-select:none!important;
}
#page-live .live-extinct-panel{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:min(650px,calc(100vw - 64px))!important;
  min-height:246px!important;
  padding:34px 44px 32px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,#76e6b0 38%,var(--v23-line))!important;
  border-radius:28px!important;
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--v23-surface) 90%,transparent),color-mix(in srgb,var(--v23-surface) 80%,transparent))!important;
  box-shadow:
    0 26px 80px rgba(0,0,0,.28),
    inset 0 1px rgba(255,255,255,.045)!important;
  backdrop-filter:blur(28px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(28px) saturate(1.08)!important;
}
#page-live .live-extinct-panel::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:0!important;
  width:150px!important;
  height:2px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg,transparent,#74e9b3,transparent)!important;
  opacity:.9!important;
}
#page-live .live-extinct-panel::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  z-index:-1!important;
  border-radius:inherit!important;
  background:radial-gradient(circle at 50% -10%,rgba(83,220,155,.11),transparent 38%)!important;
  pointer-events:none!important;
}
#page-live .live-extinct-mark{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  margin:0 0 14px!important;
  border:1px solid rgba(116,233,179,.34)!important;
  border-radius:50%!important;
  background:rgba(116,233,179,.07)!important;
}
#page-live .live-extinct-mark::before{
  content:""!important;
  width:13px!important;
  height:7px!important;
  border-left:2px solid #77e7b2!important;
  border-bottom:2px solid #77e7b2!important;
  transform:translateY(-2px) rotate(-45deg)!important;
  border-radius:1px!important;
}
#page-live .live-extinct-mark span{
  position:absolute!important;
  inset:-7px!important;
  border:1px solid rgba(116,233,179,.08)!important;
  border-radius:50%!important;
}
#page-live .live-extinct-kicker{
  margin:0 0 8px!important;
  color:color-mix(in srgb,#8be9bd 72%,var(--v23-muted))!important;
  font-size:10px!important;
  font-weight:750!important;
  line-height:1!important;
  letter-spacing:.22em!important;
}
#page-live .live-extinct-title{
  margin:0 0 13px!important;
  color:var(--v23-text)!important;
  font-size:clamp(24px,2vw,31px)!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:-.045em!important;
}
#page-live .live-extinct-timer{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:17px!important;
  min-height:67px!important;
  color:var(--v23-text)!important;
  font-variant-numeric:tabular-nums lining-nums!important;
}
#page-live .live-extinct-timer>span{
  display:flex!important;
  align-items:baseline!important;
  gap:5px!important;
  white-space:nowrap!important;
}
#page-live .live-extinct-timer strong{
  min-width:1.7ch!important;
  color:var(--v23-text)!important;
  font-family:ui-monospace,"SFMono-Regular","Cascadia Code","Roboto Mono",monospace!important;
  font-size:clamp(44px,4.2vw,64px)!important;
  font-weight:520!important;
  line-height:1!important;
  letter-spacing:-.075em!important;
}
#page-live .live-extinct-timer small{
  color:var(--v23-muted)!important;
  font-size:12px!important;
  font-weight:750!important;
  letter-spacing:-.02em!important;
}
#page-live .live-extinct-pending{
  min-height:56px!important;
  display:grid!important;
  place-items:center!important;
  color:var(--v23-muted)!important;
  font-size:14px!important;
  font-weight:700!important;
}
#page-live .live-extinct-pending[hidden],#page-live .live-extinct-timer[hidden]{display:none!important}
html[data-theme="light"] #page-live.is-all-offline #liveCardGrid{
  filter:blur(8px) brightness(.72) saturate(.55)!important;
  opacity:.65!important;
}
html[data-theme="light"] #page-live .live-extinct-panel{
  background:rgba(250,250,251,.88)!important;
  border-color:color-mix(in srgb,#45b883 32%,var(--v23-line))!important;
  box-shadow:0 26px 80px rgba(28,30,34,.14),inset 0 1px rgba(255,255,255,.72)!important;
}
@media(max-width:780px){#page-live .live-extinct-overlay{
    inset:118px 0 0!important;
    min-height:460px!important;
    padding:24px 14px!important;
  }
#page-live .live-extinct-panel{
    width:min(560px,calc(100vw - 28px))!important;
    min-height:220px!important;
    padding:28px 18px 26px!important;
    border-radius:22px!important;
  }
#page-live .live-extinct-timer{gap:10px!important}
#page-live .live-extinct-timer strong{font-size:clamp(36px,11vw,52px)!important}
#page-live .live-extinct-timer small{font-size:11px!important}}
@media(max-width:460px){#page-live .live-extinct-kicker{font-size:9px!important;letter-spacing:.16em!important}
#page-live .live-extinct-title{font-size:23px!important}
#page-live .live-extinct-timer{gap:7px!important}
#page-live .live-extinct-timer>span{gap:3px!important}
#page-live .live-extinct-timer strong{font-size:34px!important}
#page-live .live-extinct-timer small{font-size:10px!important}}

/* ===================================================================
   [v24.33] 라이브 카드 — 현재 시청자 수 배지
   썸네일 오른쪽 위. 왼쪽 위 LIVE 배지와 겹치지 않는 자리입니다.
   =================================================================== */
#page-live .live-card-thumb{position:relative}
#page-live .live-viewers{
  position:absolute;top:10px;right:10px;z-index:3;
  display:inline-flex;align-items:center;gap:5px;
  padding:4px 9px;border-radius:999px;
  background:rgba(9,13,20,.78);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  color:#f4f6f9;font-size:12px;font-weight:800;line-height:1;
  font-variant-numeric:tabular-nums;
  box-shadow:0 2px 10px rgba(0,0,0,.32);
  pointer-events:none;
}
#page-live .live-viewers i{
  width:6px;height:6px;border-radius:50%;
  background:var(--v23-accent,#ea3f69);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--v23-accent,#ea3f69) 26%,transparent);
}
@media(max-width:760px){
  #page-live .live-viewers{top:8px;right:8px;padding:3px 7px;font-size:11px}
}

/* [v25] 캘린더 레이아웃
   index.html 의 .schedule-layout 에 인라인 style="...!important" 로 박혀 있던 것을
   여기로 옮겼습니다. 인라인 !important 는 어떤 스타일시트도 이길 수 없어서,
   app.bundle.css 의 모바일 규칙(max-width:760px 에서 숨김)이 계속 무시됐고
   폰에서 PC 월간 캘린더가 모바일 주간 뷰 아래에 같이 보였습니다. */
@media (min-width:761px){
  #page-calendar .schedule-layout{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 0 56px!important;
    transform:none!important;
  }
}
