/* 디자인 시안 5종. <html data-theme="..."> 로 바꾼다. 기본(숲)은 base.css 그대로
   trail: 아웃도어 브랜드(고프코어). 카키, 안전 주황, 등고선
   sticker: 스티커 다이어리. 레몬, 굵은 검은 테두리, 각진 그림자
   maple: 가을 잡지. 흰 지면, 단풍 빨강과 겨자, 가는 선, 아주 큰 숫자
   desktop: 2000년대 컴퓨터 화면. 하늘색 바탕, 창틀, 도트 글꼴
   dancheong: 단청. 먹색 바탕, 녹청, 주홍, 황색 띠, 마루부리 제목
   sportsday: 가을 운동회. 청군 백군, 만국기, 둥근 글꼴
   fintech: 금융 앱 같은 담백함. 연회색, 파랑 하나, 큰 숫자, 둥근 카드
   scoreboard: 경기장 전광판. 검정 바탕, 호박색 불빛 숫자
   swiss: 스위스 포스터. 흰 바탕, 검정, 빨강 하나, 굵은 선과 아주 큰 글자 */
@import url("https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy.css");
@import url("https://cdn.jsdelivr.net/gh/fonts-archive/GmarketSans/GmarketSans.css");
@import url("https://cdn.jsdelivr.net/npm/galmuri@latest/dist/galmuri.css");
@import url("https://cdn.jsdelivr.net/gh/fonts-archive/Cafe24Ssurround/Cafe24Ssurround.css");
@import url("https://cdn.jsdelivr.net/gh/fonts-archive/MaruBuri/MaruBuri.css");
@import url("https://cdn.jsdelivr.net/gh/fonts-archive/NanumPen/NanumPen.css");

h1, .big, .mega, .pn, .wb, .side .opt, .tnum, .pin, .count, .t-cnt, .t-ms, .qa, .rt, .rn { font-family: var(--f-display, var(--f)); }

/* ---------- 트레일 ---------- */
[data-theme="trail"] {
  --bg: #DEDCCD; --surface: #F1F0E8; --sunk: #D2D0BF; --ink: #1B1D17; --sub: #44473B; --muted: #5C5F50; --line: #B9B7A4;
  --accent: #FF5A1F; --accent-press: #E04812; --accent-ink: #1B1D17; --accent-soft: #F6D2BF;
  --gold: #FF5A1F; --gold-ink: #1B1D17; --hot: #B42318; --hot-soft: #F4CFC9;
  --stage: #1B1D17; --stage-2: #2B2E24; --stage-ink: #F1F0E8; --stage-sub: #A9AC96;
  --r: 6px; --r-sm: 4px; --f-display: "Paperlogy", var(--f);
}
[data-theme="trail"] body, [data-theme="trail"] .scr { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='480' fill='none' stroke='%23C9C7B4' stroke-width='1.2'%3E%3Cpath d='M-20 80c80-40 140 30 220 0s150-60 300 10M-20 150c90-30 150 40 240 5s140-50 280 20M-20 230c70-50 160 20 250-10s150-40 270 30M-20 310c100-30 160 50 230 10s170-60 290 15M-20 390c80-40 150 30 240 0s150-50 280 20'/%3E%3C/svg%3E"); }
[data-theme="trail"] .scr.dark { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600' fill='none' stroke='%232B2E24' stroke-width='2'%3E%3Cpath d='M-20 100c100-50 170 40 270 0s190-70 380 15M-20 190c110-40 190 50 300 5s170-60 350 25M-20 290c90-60 200 25 310-10s190-50 340 40M-20 390c120-40 200 60 290 15s210-70 360 20M-20 490c100-50 190 40 300 0s190-60 350 25'/%3E%3C/svg%3E"); }
[data-theme="trail"] .card, [data-theme="trail"] .mrow, [data-theme="trail"] button.opt, [data-theme="trail"] .cell, [data-theme="trail"] .plist li, [data-theme="trail"] .empty { border: 1.5px solid var(--ink); }
[data-theme="trail"] .btn { border: 1.5px solid var(--ink); font-weight: 800; letter-spacing: 0.02em; }
[data-theme="trail"] .btn.ghost { background: transparent; }
[data-theme="trail"] .screen h1 { font-weight: 900; letter-spacing: -0.02em; }
[data-theme="trail"] header.top { background: var(--ink); color: var(--surface); border: 0; }
[data-theme="trail"] header.top .who { color: var(--stage-sub); }
[data-theme="trail"] .tabs { background: var(--ink); border: 0; }
[data-theme="trail"] .tabs button { color: var(--stage-sub); }
[data-theme="trail"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="trail"] .card.now, [data-theme="trail"] .notice { background: var(--accent); color: var(--ink); border-color: var(--ink); }
[data-theme="trail"] .card.now .label, [data-theme="trail"] .card.now .chase { color: var(--ink); }
[data-theme="trail"] .mrow.done { background: var(--accent-soft); border-color: var(--ink); }
[data-theme="trail"] .mp, [data-theme="trail"] .mt small.ok { color: var(--ink); }
[data-theme="trail"] .cell.on { background: var(--ink); color: var(--surface); }
[data-theme="trail"] .cell.line { background: var(--accent); color: var(--ink); border-color: var(--ink); }
[data-theme="trail"] .tpad { background: var(--ink); border: 0; }
[data-theme="trail"] .tpad.run { background: var(--accent); color: var(--ink); }
[data-theme="trail"] .tag { background: var(--ink); color: var(--surface); border-radius: 2px; }
[data-theme="trail"] .wcard { background: var(--stage); }
[data-theme="trail"] .wcard.c2, [data-theme="trail"] .wcard.c5 { background: var(--accent); color: var(--ink); }
[data-theme="trail"] .wcard.c3 { background: var(--surface); color: var(--ink); }
[data-theme="trail"] .podium { border: 1.2vh solid var(--stage); }
[data-theme="trail"] .side.s0 { background: var(--accent); color: var(--ink); }
[data-theme="trail"] .side.s1 { background: var(--surface); color: var(--ink); }
[data-theme="trail"] .rlist li.t1 { background: var(--accent); color: var(--ink); border-radius: 0; }

/* ---------- 스티커 ---------- */
[data-theme="sticker"] {
  --bg: #FFE45C; --surface: #FDFEFD; --sunk: #FFF2A8; --ink: #14191A; --sub: #2E3134; --muted: #4A4F55; --line: #14191A;
  --accent: #2F5BFF; --accent-press: #1F45D8; --accent-ink: #FDFEFD; --accent-soft: #DCE4FF;
  --gold: #FF4F8B; --gold-ink: #14191A; --hot: #FF4F8B; --hot-soft: #FFD6E5;
  --stage: #2F5BFF; --stage-2: #1F45D8; --stage-ink: #FDFEFD; --stage-sub: #CFD9FF;
  --r: 12px; --r-sm: 8px; --f-display: "GmarketSans", var(--f);
}
[data-theme="sticker"] .card, [data-theme="sticker"] .mrow, [data-theme="sticker"] button.opt, [data-theme="sticker"] .cell, [data-theme="sticker"] .plist li, [data-theme="sticker"] .empty, [data-theme="sticker"] .field, [data-theme="sticker"] .pin, [data-theme="sticker"] .seg { border: 2.5px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); }
[data-theme="sticker"] .btn { border: 2.5px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); font-weight: 800; }
[data-theme="sticker"] .btn:active { transform: translate(3px, 3px); box-shadow: 1px 1px 0 var(--ink); }
[data-theme="sticker"] .screen h1 { font-weight: 700; letter-spacing: -0.02em; }
[data-theme="sticker"] header.top { background: var(--bg); border-bottom: 2.5px solid var(--ink); }
[data-theme="sticker"] .tabs { border-top: 2.5px solid var(--ink); }
[data-theme="sticker"] .tabs button[aria-current="page"] { color: var(--ink); background: var(--gold); }
[data-theme="sticker"] .card.score { transform: rotate(-1.2deg); }
[data-theme="sticker"] .card.score.lead { background: var(--gold); border-color: var(--ink); }
[data-theme="sticker"] .card.now { background: var(--accent); color: var(--surface); }
[data-theme="sticker"] .mrow.done { background: var(--accent-soft); border-color: var(--ink); }
[data-theme="sticker"] .mrow:nth-child(odd) { transform: rotate(-0.4deg); }
[data-theme="sticker"] .cell.on { background: var(--accent); }
[data-theme="sticker"] .cell.line { background: var(--gold); color: var(--ink); border-color: var(--ink); }
[data-theme="sticker"] .tpad { background: var(--gold); color: var(--ink); border: 2.5px solid var(--ink); box-shadow: 6px 6px 0 var(--ink); }
[data-theme="sticker"] .tpad.run { background: var(--accent); color: var(--surface); }
[data-theme="sticker"] .tag { background: var(--gold); color: var(--ink); border: 1.5px solid var(--ink); }
[data-theme="sticker"] .notice { background: var(--gold); color: var(--ink); border: 2.5px solid var(--ink); box-shadow: 4px 4px 0 var(--ink); }
[data-theme="sticker"] .wcard { border: 1.4vh solid var(--ink); }
[data-theme="sticker"] .wcard.c1 { background: var(--accent); }
[data-theme="sticker"] .wcard.c3 { background: var(--bg); color: var(--ink); }
[data-theme="sticker"] .wcard.c4 { background: var(--gold); color: var(--ink); }
[data-theme="sticker"] .podium { border: 1.4vh solid var(--ink); }
[data-theme="sticker"] .podium .pn { transform: rotate(-2deg); }
[data-theme="sticker"] .podium.p1 { background: var(--gold); color: var(--ink); }
[data-theme="sticker"] .side { border: 0.6vh solid var(--ink); box-shadow: 1.2vh 1.2vh 0 var(--ink); }
[data-theme="sticker"] .side.s0 { background: var(--gold); color: var(--ink); }
[data-theme="sticker"] .side.s1 { background: var(--surface); color: var(--ink); }
[data-theme="sticker"] .qrwrap, [data-theme="sticker"] .t-board, [data-theme="sticker"] .eopts li { border: 0.5vh solid var(--ink); box-shadow: 1vh 1vh 0 var(--ink); }
[data-theme="sticker"] .dark .kicker { color: var(--bg); }
[data-theme="sticker"] .pin, [data-theme="sticker"] .count, [data-theme="sticker"] .t-cnt { color: var(--bg); }
[data-theme="sticker"] .rlist li.t1 { background: var(--bg); color: var(--ink); }

/* ---------- 메이플 ---------- */
[data-theme="maple"] {
  --bg: #F5F5F3; --surface: #F5F5F3; --sunk: #E8E7E3; --ink: #17140F; --sub: #3D3830; --muted: #6A6358; --line: #17140F;
  --accent: #C8341E; --accent-press: #A92A17; --accent-ink: #F5F5F3; --accent-soft: #F3DCD6;
  --gold: #E2A72E; --gold-ink: #17140F; --hot: #C8341E; --hot-soft: #F3DCD6;
  --stage: #3A0F0B; --stage-2: #52170F; --stage-ink: #F5F5F3; --stage-sub: #D9B9A8;
  --r: 0px; --r-sm: 0px; --f-display: "Pretendard Variable", var(--f);
}
[data-theme="maple"] .card, [data-theme="maple"] .mrow, [data-theme="maple"] .plist li, [data-theme="maple"] .empty { border: 0; border-top: 2px solid var(--ink); background: transparent; padding-left: 0; padding-right: 0; }
[data-theme="maple"] button.opt, [data-theme="maple"] .cell { border: 1px solid var(--ink); background: transparent; }
[data-theme="maple"] .screen h1 { font-size: 44px; font-weight: 900; letter-spacing: -0.05em; line-height: 1; }
[data-theme="maple"] .big { font-size: 96px; font-weight: 900; letter-spacing: -0.06em; color: var(--accent); }
[data-theme="maple"] header.top { background: var(--bg); border-bottom: 2px solid var(--ink); }
[data-theme="maple"] .brand { font-size: 17px; letter-spacing: -0.02em; }
[data-theme="maple"] .tabs { background: var(--bg); border-top: 2px solid var(--ink); }
[data-theme="maple"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="maple"] .btn { border-radius: 0; }
[data-theme="maple"] .card.now { background: var(--ink); color: var(--bg); padding: 16px; }
[data-theme="maple"] .card.score.lead { box-shadow: none; border-top: 6px solid var(--accent); }
[data-theme="maple"] .mrow.done { background: transparent; border-top-color: var(--accent); }
[data-theme="maple"] .mrow.done .mt { color: var(--accent); }
[data-theme="maple"] .prog .bar { height: 3px; border-radius: 0; }
[data-theme="maple"] .cell.on { background: var(--ink); color: var(--bg); }
[data-theme="maple"] .cell.line { background: var(--accent); color: var(--bg); border-color: var(--accent); }
[data-theme="maple"] .tpad { background: var(--accent); }
[data-theme="maple"] .tpad.run { background: var(--ink); }
[data-theme="maple"] .tag { background: transparent; color: var(--accent); border: 1px solid var(--accent); border-radius: 0; }
[data-theme="maple"] .notice { background: var(--accent); border-radius: 0; }
[data-theme="maple"] .mega { font-size: 15vh; letter-spacing: -0.06em; line-height: 0.95; }
[data-theme="maple"] .kicker { letter-spacing: 0.04em; }
[data-theme="maple"] .dark .kicker { color: var(--gold); }
[data-theme="maple"] .wcard { background: var(--stage); }
[data-theme="maple"] .wcard.c2, [data-theme="maple"] .wcard.c5 { background: var(--accent); }
[data-theme="maple"] .wcard.c3 { background: var(--bg); color: var(--ink); }
[data-theme="maple"] .wcard.c4 { background: var(--gold); color: var(--ink); }
[data-theme="maple"] .wb { font-size: 17vh; letter-spacing: -0.06em; }
[data-theme="maple"] .podium { background: var(--bg); color: var(--ink); }
[data-theme="maple"] .podium .pk { color: var(--accent); font-size: 8vh; font-weight: 900; }
[data-theme="maple"] .podium.p1 { background: var(--accent); color: var(--bg); }
[data-theme="maple"] .podium.p1 .pk { color: var(--gold); }
[data-theme="maple"] .side { border-radius: 0; }
[data-theme="maple"] .side.s0 { background: var(--accent); }
[data-theme="maple"] .side.s1 { background: var(--bg); color: var(--ink); }
[data-theme="maple"] .rlist li.t1 { background: var(--gold); color: var(--ink); border-radius: 0; }
[data-theme="maple"] .qrwrap, [data-theme="maple"] .eopts li, [data-theme="maple"] .t-board, [data-theme="maple"] .qlist li { border-radius: 0; }

/* ---------- 데스크톱 ---------- */
[data-theme="desktop"] {
  --bg: #BFD7F6; --surface: #E6EAF0; --sunk: #D3D8E0; --ink: #101820; --sub: #2C3644; --muted: #46557A; --line: #101820;
  --accent: #2E4FD8; --accent-press: #2340B8; --accent-ink: #FDFEFD; --accent-soft: #D7DFFB;
  --gold: #FFD23F; --gold-ink: #101820; --hot: #D7263D; --hot-soft: #F8D3D8;
  --stage: #1F7A7A; --stage-2: #186464; --stage-ink: #FDFEFD; --stage-sub: #C9ECEC;
  --r: 0px; --r-sm: 0px; --f-display: "Galmuri11", "Galmuri9", var(--f);
}
[data-theme="desktop"] .card, [data-theme="desktop"] .mrow, [data-theme="desktop"] .plist li, [data-theme="desktop"] .empty, [data-theme="desktop"] button.opt, [data-theme="desktop"] .cell, [data-theme="desktop"] .field, [data-theme="desktop"] .pin {
  border: 2px solid var(--ink); box-shadow: inset -2px -2px 0 #8A93A3, inset 2px 2px 0 #FDFEFD; background: var(--surface); }
[data-theme="desktop"] .card { padding-top: 34px; position: relative; }
[data-theme="desktop"] .card::before { content: ""; position: absolute; left: 2px; right: 2px; top: 2px; height: 24px; background: var(--accent); }
[data-theme="desktop"] .card::after { content: "_  □  x"; position: absolute; right: 10px; top: 4px; font: 700 13px/20px "Galmuri11", monospace; color: var(--accent-ink); letter-spacing: 0.1em; }
[data-theme="desktop"] .btn { border: 2px solid var(--ink); box-shadow: inset -2px -2px 0 rgba(16, 24, 32, .45), inset 2px 2px 0 rgba(253, 254, 253, .55); font-family: "Galmuri11", var(--f); }
[data-theme="desktop"] .btn.ghost { background: var(--surface); }
[data-theme="desktop"] .screen h1 { font-family: "Galmuri11", var(--f); font-weight: 700; letter-spacing: 0; }
[data-theme="desktop"] header.top { background: var(--accent); color: var(--accent-ink); border: 0; }
[data-theme="desktop"] header.top .who { color: var(--accent-soft); }
[data-theme="desktop"] .tabs { background: var(--surface); border-top: 2px solid var(--ink); }
[data-theme="desktop"] .tabs button[aria-current="page"] { color: var(--ink); background: var(--sunk); box-shadow: inset 2px 2px 0 #8A93A3; }
[data-theme="desktop"] .big, [data-theme="desktop"] .tnum { font-family: "Galmuri11", var(--f); letter-spacing: 0; }
[data-theme="desktop"] .card.now { background: var(--surface); color: var(--ink); }
[data-theme="desktop"] .card.now .label, [data-theme="desktop"] .card.now .chase { color: var(--sub); }
[data-theme="desktop"] .mrow.done { background: var(--accent-soft); }
[data-theme="desktop"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="desktop"] .cell.line { background: var(--gold); color: var(--ink); }
[data-theme="desktop"] .tpad { background: #101820; color: #7CFF8A; font-family: "Galmuri11", monospace; border: 2px solid var(--ink); }
[data-theme="desktop"] .tpad.run { background: #101820; }
[data-theme="desktop"] .notice { background: var(--gold); color: var(--ink); border: 2px solid var(--ink); }
[data-theme="desktop"] .tag { background: var(--gold); color: var(--ink); border-radius: 0; }
[data-theme="desktop"] .kicker, [data-theme="desktop"] .mega, [data-theme="desktop"] .pn, [data-theme="desktop"] .wb, [data-theme="desktop"] .side .opt { font-family: "Galmuri11", var(--f); letter-spacing: 0; }
[data-theme="desktop"] .wcard, [data-theme="desktop"] .podium { background: var(--stage); }
[data-theme="desktop"] .wcard.c3, [data-theme="desktop"] .podium.p1 { background: var(--gold); color: var(--ink); }
[data-theme="desktop"] .wcard.c4 { background: var(--accent); }
[data-theme="desktop"] .side, [data-theme="desktop"] .qrwrap, [data-theme="desktop"] .t-board, [data-theme="desktop"] .eopts li, [data-theme="desktop"] .qlist li { border-radius: 0; border: 0.4vh solid var(--ink); box-shadow: inset -0.5vh -0.5vh 0 rgba(16, 24, 32, .35), inset 0.5vh 0.5vh 0 rgba(253, 254, 253, .5); }
[data-theme="desktop"] .side.s0 { background: var(--surface); color: var(--ink); }
[data-theme="desktop"] .side.s1 { background: var(--accent); color: var(--accent-ink); }
[data-theme="desktop"] .t-board, [data-theme="desktop"] .eopts li { background: var(--surface); color: var(--ink); }
[data-theme="desktop"] .rlist li.t1 { background: var(--gold); color: var(--ink); border-radius: 0; }

/* ---------- 단청 ---------- */
[data-theme="dancheong"] {
  --bg: #15201F; --surface: #1E2C2A; --sunk: #283A37; --ink: #F1EDE4; --sub: #CFC8B8; --muted: #A8A08F; --line: #34504B;
  --accent: #2E9E83; --accent-press: #248069; --accent-ink: #F1EDE4; --accent-soft: #1F3A34;
  --gold: #E8B33A; --gold-ink: #1A1408; --hot: #D9502A; --hot-soft: #3A221A;
  --stage: #101817; --stage-2: #1E2C2A; --stage-ink: #F1EDE4; --stage-sub: #A8A08F;
  --r: 4px; --r-sm: 3px; --f-display: "Maru Buri", var(--f);
  color-scheme: dark;
}
[data-theme="dancheong"] header.top, [data-theme="dancheong"] .ophead { background: var(--bg); box-shadow: 0 3px 0 #2E9E83, 0 6px 0 #D9502A, 0 9px 0 #E8B33A; border: 0; }
[data-theme="dancheong"] .tabs { background: var(--surface); border-top: 3px solid #E8B33A; }
[data-theme="dancheong"] .tabs button[aria-current="page"] { color: var(--gold); }
[data-theme="dancheong"] .screen h1 { font-weight: 700; letter-spacing: -0.01em; }
[data-theme="dancheong"] .card, [data-theme="dancheong"] .mrow, [data-theme="dancheong"] button.opt, [data-theme="dancheong"] .cell, [data-theme="dancheong"] .empty { border-color: var(--line); }
[data-theme="dancheong"] .card.score.lead { border: 2px solid var(--gold); }
[data-theme="dancheong"] .card.now { background: var(--hot); border-color: var(--hot); }
[data-theme="dancheong"] .mrow.done { background: var(--accent-soft); border-color: var(--accent); }
[data-theme="dancheong"] .mp, [data-theme="dancheong"] .mt small.ok { color: var(--gold); }
[data-theme="dancheong"] .cell.on { background: var(--accent); }
[data-theme="dancheong"] .cell.line { background: var(--gold); color: var(--gold-ink); }
[data-theme="dancheong"] .tpad { background: #0E1514; color: var(--ink); border: 2px solid var(--gold); }
[data-theme="dancheong"] .tpad.run { background: var(--hot); border-color: var(--hot); }
[data-theme="dancheong"] .notice { background: var(--hot); }
[data-theme="dancheong"] .tag { background: var(--accent-soft); color: var(--gold); }
[data-theme="dancheong"] .btn.ghost { background: transparent; color: var(--ink); border-color: var(--line); }
[data-theme="dancheong"] .field, [data-theme="dancheong"] .pin { background: var(--sunk); border-color: var(--line); color: var(--ink); }
[data-theme="dancheong"] .scr.dark, [data-theme="dancheong"] .scr { background: var(--stage); color: var(--stage-ink); box-shadow: inset 0 1.2vh 0 #2E9E83, inset 0 2.4vh 0 #D9502A, inset 0 3.6vh 0 #E8B33A; }
[data-theme="dancheong"] .wcard { background: var(--stage); box-shadow: inset 0 1.2vh 0 #2E9E83, inset 0 2.4vh 0 #D9502A, inset 0 3.6vh 0 #E8B33A; }
[data-theme="dancheong"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="dancheong"] .wcard.c4 { background: var(--hot); }
[data-theme="dancheong"] .podium { background: var(--accent); }
[data-theme="dancheong"] .podium.p1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="dancheong"] .side.s0 { background: var(--accent); }
[data-theme="dancheong"] .side.s1 { background: var(--hot); color: var(--stage-ink); }

/* ---------- 가을 운동회 ---------- */
[data-theme="sportsday"] {
  --bg: #F3F6FB; --surface: #FDFEFD; --sunk: #E4EAF5; --ink: #12203A; --sub: #34445F; --muted: #56647C; --line: #CCD6E8;
  --accent: #2453C9; --accent-press: #1C43A6; --accent-ink: #FDFEFD; --accent-soft: #DCE6FB;
  --gold: #FFC93C; --gold-ink: #12203A; --hot: #E63B2E; --hot-soft: #FCDDD9;
  --stage: #2453C9; --stage-2: #1C43A6; --stage-ink: #FDFEFD; --stage-sub: #CFDBFA;
  --r: 18px; --r-sm: 12px; --f-display: "Cafe24 Ssurround", var(--f);
}
[data-theme="sportsday"] header.top { background-color: var(--surface); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='14'%3E%3Cpath d='M0 0h20l-10 12z' fill='%23E63B2E'/%3E%3Cpath d='M20 0h20l-10 12z' fill='%23FFC93C'/%3E%3Cpath d='M40 0h20l-10 12z' fill='%232453C9'/%3E%3Cpath d='M60 0h20l-10 12z' fill='%2346A758'/%3E%3Cpath d='M80 0h20l-10 12z' fill='%23F76B15'/%3E%3Cpath d='M100 0h20l-10 12z' fill='%23AB4ABA'/%3E%3C/svg%3E"); background-repeat: repeat-x; background-position: left bottom; padding-bottom: 22px; }
[data-theme="sportsday"] .screen h1 { font-weight: 700; letter-spacing: -0.01em; }
[data-theme="sportsday"] .btn { border-radius: 999px; }
[data-theme="sportsday"] .card.score { background: var(--accent); color: var(--accent-ink); border: 0; }
[data-theme="sportsday"] .card.score .label, [data-theme="sportsday"] .card.score .chase, [data-theme="sportsday"] .card.score .live { color: var(--accent-ink); }
[data-theme="sportsday"] .card.score.lead { background: var(--hot); }
[data-theme="sportsday"] .card.now { background: var(--gold); color: var(--ink); border: 0; }
[data-theme="sportsday"] .card.now .label, [data-theme="sportsday"] .card.now .chase { color: var(--ink); }
[data-theme="sportsday"] .mrow { border-width: 2px; }
[data-theme="sportsday"] .mrow.done { background: var(--accent-soft); border-color: var(--accent); }
[data-theme="sportsday"] .cell { border-radius: 50%; }
[data-theme="sportsday"] .cell.on { background: var(--accent); }
[data-theme="sportsday"] .cell.line { background: var(--hot); color: var(--accent-ink); border-color: var(--hot); }
[data-theme="sportsday"] .tpad { background: var(--hot); border-radius: 28px; }
[data-theme="sportsday"] .tpad.run { background: var(--accent); }
[data-theme="sportsday"] .tabs button[aria-current="page"] { color: var(--hot); }
[data-theme="sportsday"] .wcard.c1 { background: var(--accent); }
[data-theme="sportsday"] .wcard.c2, [data-theme="sportsday"] .wcard.c5 { background: var(--hot); }
[data-theme="sportsday"] .wcard.c3 { background: var(--gold); color: var(--ink); }
[data-theme="sportsday"] .wcard.c4 { background: #46A758; }
[data-theme="sportsday"] .podium { border-radius: 0; }
[data-theme="sportsday"] .podium.p1 { background: var(--gold); color: var(--ink); }
[data-theme="sportsday"] .side { border-radius: 4vh; }
[data-theme="sportsday"] .side.s0 { background: var(--accent); }
[data-theme="sportsday"] .side.s1 { background: var(--hot); color: var(--stage-ink); text-align: right; }
[data-theme="sportsday"] .side.s1 .opt { color: var(--stage-ink); }

/* ---------- 블루 핀테크 ---------- */
[data-theme="fintech"] {
  --bg: #F2F4F6; --surface: #FDFEFD; --sunk: #E8EBEE; --ink: #191F28; --sub: #4E5968; --muted: #6B7684; --line: #E5E8EB;
  --accent: #3182F6; --accent-press: #1B64DA; --accent-ink: #FDFEFD; --accent-soft: #E8F3FF;
  --gold: #3182F6; --gold-ink: #FDFEFD; --hot: #F04452; --hot-soft: #FFEEEE;
  --stage: #191F28; --stage-2: #222A35; --stage-ink: #FDFEFD; --stage-sub: #8B95A1;
  --r: 20px; --r-sm: 14px;
}
[data-theme="fintech"] .card, [data-theme="fintech"] .mrow, [data-theme="fintech"] .empty, [data-theme="fintech"] button.opt, [data-theme="fintech"] .cell { border: 0; }
[data-theme="fintech"] .card { padding: 22px; }
[data-theme="fintech"] header.top, [data-theme="fintech"] .tabs { background: var(--surface); border: 0; }
[data-theme="fintech"] .screen h1 { font-size: 26px; font-weight: 700; }
[data-theme="fintech"] .big { color: var(--accent); }
[data-theme="fintech"] .card.score.lead { box-shadow: none; }
[data-theme="fintech"] .card.now { background: var(--accent); color: var(--accent-ink); border: 0; }
[data-theme="fintech"] .card.now .label, [data-theme="fintech"] .card.now .chase { color: #D3E4FD; }
[data-theme="fintech"] .mrow.done { background: var(--surface); }
[data-theme="fintech"] .mrow.done .mt { color: var(--muted); }
[data-theme="fintech"] .btn { border: 0; font-weight: 700; }
[data-theme="fintech"] .btn.ghost { background: var(--accent-soft); color: var(--accent); }
[data-theme="fintech"] .cell.on { background: var(--accent); }
[data-theme="fintech"] .cell.line { background: #1B64DA; color: var(--accent-ink); }
[data-theme="fintech"] .tpad { background: var(--accent); border-radius: 24px; }
[data-theme="fintech"] .tpad.run { background: #1B64DA; }
[data-theme="fintech"] .notice { background: var(--ink); }
[data-theme="fintech"] .tag { background: var(--accent-soft); color: var(--accent); }
[data-theme="fintech"] .wcard { background: var(--stage); }
[data-theme="fintech"] .wcard.c2, [data-theme="fintech"] .wcard.c5 { background: var(--accent); }
[data-theme="fintech"] .wcard.c3 { background: var(--surface); color: var(--ink); }
[data-theme="fintech"] .wcard.c4 { background: var(--stage-2); }
[data-theme="fintech"] .podium { background: var(--stage-2); }
[data-theme="fintech"] .podium.p1 { background: var(--accent); color: var(--accent-ink); }
[data-theme="fintech"] .side { border-radius: 3vh; }
[data-theme="fintech"] .side.s0 { background: var(--accent); }
[data-theme="fintech"] .side.s1 { background: var(--stage-2); color: var(--stage-ink); }
[data-theme="fintech"] .rlist li.t1 { background: var(--accent); color: var(--accent-ink); }
[data-theme="fintech"] .dark .kicker, [data-theme="fintech"] .pin, [data-theme="fintech"] .count, [data-theme="fintech"] .t-cnt { color: #64A8FF; }

/* ---------- 전광판 ---------- */
[data-theme="scoreboard"] {
  --bg: #111312; --surface: #1A1D1B; --sunk: #232724; --ink: #F4F1E8; --sub: #C9C4B5; --muted: #9A9586; --line: #2E322F;
  --accent: #FFB000; --accent-press: #E09B00; --accent-ink: #111312; --accent-soft: #2E2716;
  --gold: #FFB000; --gold-ink: #111312; --hot: #FF5C39; --hot-soft: #33201A;
  --stage: #0B0C0B; --stage-2: #1A1D1B; --stage-ink: #F4F1E8; --stage-sub: #9A9586;
  --r: 2px; --r-sm: 2px; --f-display: "Galmuri11", var(--f);
  color-scheme: dark;
}
[data-theme="scoreboard"] body, [data-theme="scoreboard"] .scr { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6'%3E%3Ccircle cx='3' cy='3' r='0.8' fill='%23FFB000' fill-opacity='0.07'/%3E%3C/svg%3E"); }
[data-theme="scoreboard"] header.top, [data-theme="scoreboard"] .tabs { background: #0B0C0B; border-color: var(--line); }
[data-theme="scoreboard"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="scoreboard"] h1, [data-theme="scoreboard"] .big, [data-theme="scoreboard"] .tnum, [data-theme="scoreboard"] .mega, [data-theme="scoreboard"] .pn, [data-theme="scoreboard"] .wb, [data-theme="scoreboard"] .side .opt { font-family: "Galmuri11", var(--f); letter-spacing: 0; }
[data-theme="scoreboard"] .big, [data-theme="scoreboard"] .tnum, [data-theme="scoreboard"] .pts { color: var(--accent); text-shadow: 0 0 12px rgba(255, 176, 0, .45); }
[data-theme="scoreboard"] .card, [data-theme="scoreboard"] .mrow, [data-theme="scoreboard"] button.opt, [data-theme="scoreboard"] .cell, [data-theme="scoreboard"] .empty { border-color: var(--line); }
[data-theme="scoreboard"] .field, [data-theme="scoreboard"] .pin { background: var(--sunk); color: var(--ink); border-color: var(--line); }
[data-theme="scoreboard"] .card.score.lead { border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); }
[data-theme="scoreboard"] .card.now { background: #0B0C0B; border-color: var(--hot); }
[data-theme="scoreboard"] .mrow.done { background: var(--accent-soft); border-color: var(--accent); }
[data-theme="scoreboard"] .mp, [data-theme="scoreboard"] .mt small.ok { color: var(--accent); }
[data-theme="scoreboard"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="scoreboard"] .cell.line { background: var(--hot); color: var(--accent-ink); }
[data-theme="scoreboard"] .tpad { background: #0B0C0B; color: var(--accent); border: 2px solid var(--line); font-family: "Galmuri11", var(--f); }
[data-theme="scoreboard"] .tpad.run { border-color: var(--accent); }
[data-theme="scoreboard"] .btn.ghost { background: transparent; color: var(--ink); border-color: var(--line); }
[data-theme="scoreboard"] .tag { background: var(--accent-soft); color: var(--accent); }
[data-theme="scoreboard"] .notice { background: var(--accent); color: var(--accent-ink); }
[data-theme="scoreboard"] .wcard { background: #0B0C0B; }
[data-theme="scoreboard"] .wcard .wb { color: var(--accent); text-shadow: 0 0 2vh rgba(255, 176, 0, .5); }
[data-theme="scoreboard"] .wcard.c3 .wb, [data-theme="scoreboard"] .wcard.c4 .wb { color: var(--hot); }
[data-theme="scoreboard"] .wcard.c3, [data-theme="scoreboard"] .wcard.c4 { background: #0B0C0B; color: var(--stage-ink); }
[data-theme="scoreboard"] .podium, [data-theme="scoreboard"] .podium.p1 { background: #0B0C0B; color: var(--accent); }
[data-theme="scoreboard"] .podium .pn { text-shadow: 0 0 3vh rgba(255, 176, 0, .55); }
[data-theme="scoreboard"] .side { border-radius: 0; background: #0B0C0B; color: var(--accent); border: 0.4vh solid var(--line); }
[data-theme="scoreboard"] .side.s1 { color: var(--hot); }
[data-theme="scoreboard"] .rlist li.t1 { background: var(--accent); color: var(--accent-ink); border-radius: 0; }

/* ---------- 스위스 포스터 ---------- */
[data-theme="swiss"] {
  --bg: #F7F7F5; --surface: #F7F7F5; --sunk: #EAEAE7; --ink: #0E0E0E; --sub: #2B2B2B; --muted: #5A5A5A; --line: #0E0E0E;
  --accent: #E10600; --accent-press: #B80500; --accent-ink: #F7F7F5; --accent-soft: #FBE3E2;
  --gold: #E10600; --gold-ink: #F7F7F5; --hot: #E10600; --hot-soft: #FBE3E2;
  --stage: #0E0E0E; --stage-2: #1C1C1C; --stage-ink: #F7F7F5; --stage-sub: #B5B5B5;
  --r: 0px; --r-sm: 0px;
}
[data-theme="swiss"] .screen h1 { font-size: 48px; font-weight: 900; letter-spacing: -0.06em; line-height: 0.95; }
[data-theme="swiss"] header.top { border-bottom: 4px solid var(--ink); }
[data-theme="swiss"] .dot { border-radius: 0; background: var(--accent) !important; }
[data-theme="swiss"] .tabs { border-top: 4px solid var(--ink); }
[data-theme="swiss"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="swiss"] .card, [data-theme="swiss"] .mrow, [data-theme="swiss"] .empty { border: 0; border-top: 4px solid var(--ink); padding-left: 0; padding-right: 0; background: transparent; }
[data-theme="swiss"] button.opt, [data-theme="swiss"] .cell { border: 2px solid var(--ink); background: transparent; }
[data-theme="swiss"] .big { font-size: 110px; letter-spacing: -0.07em; }
[data-theme="swiss"] .card.score.lead { box-shadow: none; border-top-color: var(--accent); }
[data-theme="swiss"] .card.now { background: var(--accent); color: var(--accent-ink); padding: 16px; border: 0; }
[data-theme="swiss"] .card.now .label, [data-theme="swiss"] .card.now .chase { color: var(--accent-ink); }
[data-theme="swiss"] .mrow.done .mt { color: var(--accent); }
[data-theme="swiss"] .mp { color: var(--ink); font-weight: 900; }
[data-theme="swiss"] .cell.on { background: var(--ink); color: var(--bg); }
[data-theme="swiss"] .cell.line { background: var(--accent); color: var(--bg); border-color: var(--accent); }
[data-theme="swiss"] .tpad { background: var(--ink); }
[data-theme="swiss"] .tpad.run { background: var(--accent); }
[data-theme="swiss"] .btn { border-radius: 0; }
[data-theme="swiss"] .tag { background: var(--ink); color: var(--bg); border-radius: 0; }
[data-theme="swiss"] .notice { background: var(--ink); border-radius: 0; }
[data-theme="swiss"] .mega { font-size: 16vh; letter-spacing: -0.07em; line-height: 0.92; }
[data-theme="swiss"] .wcard { background: var(--bg); color: var(--ink); }
[data-theme="swiss"] .wcard.c2, [data-theme="swiss"] .wcard.c5 { background: var(--accent); color: var(--bg); }
[data-theme="swiss"] .wcard.c4 { background: var(--ink); color: var(--bg); }
[data-theme="swiss"] .wb { font-size: 18vh; letter-spacing: -0.07em; line-height: 0.95; }
[data-theme="swiss"] .podium { background: var(--bg); color: var(--ink); align-items: flex-start; text-align: left; padding: 0 8vw; }
[data-theme="swiss"] .podium .pk { font-size: 10vh; font-weight: 900; color: var(--accent); }
[data-theme="swiss"] .podium.p1 { background: var(--accent); color: var(--bg); }
[data-theme="swiss"] .podium.p1 .pk { color: var(--bg); }
[data-theme="swiss"] .side { border-radius: 0; }
[data-theme="swiss"] .side.s0 { background: var(--accent); }
[data-theme="swiss"] .side.s1 { background: var(--bg); color: var(--ink); }
[data-theme="swiss"] .rlist li.t1 { background: var(--accent); color: var(--bg); border-radius: 0; }
[data-theme="swiss"] .qrwrap, [data-theme="swiss"] .eopts li, [data-theme="swiss"] .t-board, [data-theme="swiss"] .qlist li { border-radius: 0; }

/* ===== 시안 11~20 =====
   arcade: 오락실 8비트. 검정 바탕, 원색, 도트 글꼴, 각진 픽셀 테두리
   clay: 말랑한 장난감. 파스텔 단색, 두툼한 아래 그림자, 아주 둥근 모서리
   newspaper: 조간신문. 회색 신문지, 검정 잉크, 마루부리 제목, 단 나누는 선
   excel: 엑셀 시트. 칸 격자, 초록 리본, 선택된 칸 테두리, 수식 입력줄 공지
   boarding: 탑승권. 절취선과 꼬리표 카드, 큰 화면은 공항 출발 안내판
   trailsign: 국립공원 이정표. 갈색 나무 표지판, 숲 초록, 등산로 주황
   breaking: 뉴스 속보. 하단 자막 띠, 빨강과 남색, 큰 화면은 방송 화면
   postit: 회의실 포스트잇. 화이트보드에 붙인 메모, 테이프, 손글씨 제목
   subway: 지하철 노선도. 노선 색 줄과 역 점, 미션과 순위를 역으로
   approval: 결재판. 공문서 표, 이중선, 빨간 도장 */

/* ---------- 오락실 ---------- */
[data-theme="arcade"] {
  --bg: #0D0D10; --surface: #17171C; --sunk: #22222A; --ink: #F5F5F0; --sub: #C8C8C0; --muted: #9A9A92; --line: #F5F5F0;
  --accent: #FF3B30; --accent-press: #D92E25; --accent-ink: #F5F5F0; --accent-soft: #3A1614;
  --gold: #FFD60A; --gold-ink: #0D0D10; --hot: #FF3B30; --hot-soft: #3A1614;
  --stage: #0D0D10; --stage-2: #17171C; --stage-ink: #F5F5F0; --stage-sub: #9A9A92;
  --r: 0px; --r-sm: 0px; --f-display: "Galmuri11", var(--f);
  color-scheme: dark;
}
[data-theme="arcade"] .screen h1, [data-theme="arcade"] .big, [data-theme="arcade"] .tnum, [data-theme="arcade"] .brand { font-family: "Galmuri11", var(--f); letter-spacing: 0; }
[data-theme="arcade"] .screen h1 { color: var(--gold); }
[data-theme="arcade"] header.top { background: var(--bg); border-bottom: 3px dashed var(--gold); }
[data-theme="arcade"] .tabs { background: var(--bg); border-top: 3px solid var(--ink); }
[data-theme="arcade"] .tabs button[aria-current="page"] { background: var(--gold); color: var(--gold-ink); }
[data-theme="arcade"] .card, [data-theme="arcade"] .mrow, [data-theme="arcade"] button.opt, [data-theme="arcade"] .cell, [data-theme="arcade"] .empty { border: 3px solid var(--ink); box-shadow: 4px 4px 0 #2D6BFF; }
[data-theme="arcade"] .field, [data-theme="arcade"] .pin { background: var(--sunk); color: var(--ink); border: 3px solid var(--ink); }
[data-theme="arcade"] .btn { border: 3px solid var(--ink); box-shadow: 4px 4px 0 #2D6BFF; font-family: "Galmuri11", var(--f); }
[data-theme="arcade"] .btn.ghost { background: var(--bg); color: var(--ink); }
[data-theme="arcade"] .btn:active { transform: translate(4px, 4px); box-shadow: none; }
[data-theme="arcade"] .card.score.lead { border-color: var(--gold); box-shadow: 4px 4px 0 var(--accent); }
[data-theme="arcade"] .card.now { background: #2D6BFF; border-color: var(--ink); }
[data-theme="arcade"] .card.now .label, [data-theme="arcade"] .card.now .chase { color: var(--ink); }
[data-theme="arcade"] .mrow.done { background: var(--sunk); border-color: var(--gold); }
[data-theme="arcade"] .mp, [data-theme="arcade"] .mt small.ok { color: var(--gold); }
[data-theme="arcade"] .cell.on { background: var(--accent); color: var(--ink); }
[data-theme="arcade"] .cell.line { background: var(--gold); color: var(--gold-ink); }
[data-theme="arcade"] .tpad { background: var(--bg); color: var(--gold); border: 3px solid var(--gold); font-family: "Galmuri11", var(--f); }
[data-theme="arcade"] .tpad.run { background: var(--accent); color: var(--ink); border-color: var(--ink); }
[data-theme="arcade"] .notice { background: var(--gold); color: var(--gold-ink); font-family: "Galmuri11", var(--f); }
[data-theme="arcade"] .tag { background: var(--gold); color: var(--gold-ink); }
[data-theme="arcade"] .mega, [data-theme="arcade"] .kicker, [data-theme="arcade"] .pn, [data-theme="arcade"] .wb, [data-theme="arcade"] .side .opt, [data-theme="arcade"] .rname { font-family: "Galmuri11", var(--f); letter-spacing: 0; }
[data-theme="arcade"] .mega { color: var(--gold); text-shadow: 0.6vh 0.6vh 0 var(--accent); }
[data-theme="arcade"] .wcard { background: var(--stage); border: 1.6vh solid var(--ink); }
[data-theme="arcade"] .wcard.c2 { background: var(--accent); }
[data-theme="arcade"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="arcade"] .wcard.c4 { background: #2D6BFF; }
[data-theme="arcade"] .podium { background: var(--stage); color: var(--gold); border: 1.6vh dashed var(--gold); }
[data-theme="arcade"] .podium.p1 { background: var(--gold); color: var(--gold-ink); border-color: var(--accent); }
[data-theme="arcade"] .side { border-radius: 0; border: 0.6vh solid var(--ink); box-shadow: 1vh 1vh 0 #2D6BFF; }
[data-theme="arcade"] .side.s0 { background: var(--accent); color: var(--ink); }
[data-theme="arcade"] .side.s1 { background: #2D6BFF; color: var(--ink); }
[data-theme="arcade"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); border-radius: 0; }
[data-theme="arcade"] .eopts li, [data-theme="arcade"] .t-board, [data-theme="arcade"] .qrwrap { border-radius: 0; border: 0.4vh solid var(--ink); }

/* ---------- 말랑 ---------- */
[data-theme="clay"] {
  --bg: #E7F0FF; --surface: #FDFEFD; --sunk: #D9E6FA; --ink: #24304A; --sub: #4A5878; --muted: #5D6B8E; --line: #C9D6EE;
  --accent: #FF7A45; --accent-press: #E8652F; --accent-ink: #FDFEFD; --accent-soft: #FFE1D3;
  --gold: #FFC94A; --gold-ink: #3D2E00; --hot: #FF5D73; --hot-soft: #FFE0E5;
  --stage: #2E3A66; --stage-2: #3A4880; --stage-ink: #FDFEFD; --stage-sub: #C3CCEE;
  --r: 26px; --r-sm: 18px; --f-display: "Cafe24 Ssurround", var(--f);
}
[data-theme="clay"] .screen h1 { font-weight: 700; color: var(--ink); }
[data-theme="clay"] .card, [data-theme="clay"] .mrow, [data-theme="clay"] .empty { border: 0; box-shadow: 0 7px 0 var(--line); }
[data-theme="clay"] button.opt, [data-theme="clay"] .cell { border: 0; box-shadow: 0 5px 0 var(--line); }
[data-theme="clay"] .field, [data-theme="clay"] .pin { border: 0; box-shadow: inset 0 3px 0 var(--line); background: var(--surface); }
[data-theme="clay"] .btn { border: 0; box-shadow: 0 6px 0 #D45F2C; font-weight: 800; }
[data-theme="clay"] .btn:active { transform: translateY(4px); box-shadow: 0 2px 0 #D45F2C; }
[data-theme="clay"] .btn.ghost { box-shadow: 0 6px 0 var(--line); }
[data-theme="clay"] header.top { background: var(--bg); border: 0; }
[data-theme="clay"] .tabs { border: 0; box-shadow: 0 -6px 0 var(--sunk); border-radius: 26px 26px 0 0; }
[data-theme="clay"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="clay"] .card.score { background: #FFE1D3; box-shadow: 0 8px 0 #F2B79B; }
[data-theme="clay"] .card.score.lead { background: #FFF1C2; box-shadow: 0 8px 0 #E9C25A; }
[data-theme="clay"] .card.now { background: #6C8CFF; color: var(--accent-ink); box-shadow: 0 8px 0 #4C68D6; }
[data-theme="clay"] .card.now .label, [data-theme="clay"] .card.now .chase { color: #E6ECFF; }
[data-theme="clay"] .mrow.done { background: #DDF5EA; box-shadow: 0 7px 0 #A9DCC4; }
[data-theme="clay"] .cell.on { background: #6C8CFF; color: var(--accent-ink); box-shadow: 0 5px 0 #4C68D6; }
[data-theme="clay"] .cell.line { background: var(--gold); color: var(--gold-ink); box-shadow: 0 5px 0 #D9A62F; }
[data-theme="clay"] .tpad { background: var(--accent); color: var(--accent-ink); border-radius: 32px; box-shadow: 0 10px 0 #D45F2C; }
[data-theme="clay"] .tpad.run { background: #6C8CFF; box-shadow: 0 10px 0 #4C68D6; }
[data-theme="clay"] .notice { background: var(--gold); color: var(--gold-ink); box-shadow: 0 6px 0 #D9A62F; }
[data-theme="clay"] .tag { background: var(--accent-soft); color: #B94A1E; border-radius: 10px; }
[data-theme="clay"] .wcard { border-radius: 0; }
[data-theme="clay"] .wcard.c1 { background: var(--accent); }
[data-theme="clay"] .wcard.c2 { background: #6C8CFF; }
[data-theme="clay"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="clay"] .wcard.c4 { background: #3FB58C; }
[data-theme="clay"] .wcard.c5 { background: var(--stage); }
[data-theme="clay"] .wcard.c6 { background: #FF8FB1; color: #3B1422; }
[data-theme="clay"] .wb, [data-theme="clay"] .pn, [data-theme="clay"] .mega { text-shadow: 0 1vh 0 rgba(36, 48, 74, .18); }
[data-theme="clay"] .side { border-radius: 6vh; box-shadow: 0 1.4vh 0 rgba(36, 48, 74, .35); }
[data-theme="clay"] .side.s0 { background: var(--accent); }
[data-theme="clay"] .side.s1 { background: #6C8CFF; color: var(--stage-ink); }
[data-theme="clay"] .eopts li, [data-theme="clay"] .t-board { border-radius: 4vh; box-shadow: 0 1vh 0 rgba(0, 0, 0, .25); }
[data-theme="clay"] .qrwrap { border-radius: 5vh; box-shadow: 0 1.4vh 0 rgba(0, 0, 0, .25); }
[data-theme="clay"] .rlist li.t1 { border-radius: 3vh; }

/* ---------- 조간신문 ---------- */
[data-theme="newspaper"] {
  --bg: #E6E6E2; --surface: #EFEFEB; --sunk: #DADAD5; --ink: #121212; --sub: #2E2E2E; --muted: #4F4F4C; --line: #121212;
  --accent: #121212; --accent-press: #2E2E2E; --accent-ink: #EFEFEB; --accent-soft: #DADAD5;
  --gold: #B3261E; --gold-ink: #EFEFEB; --hot: #B3261E; --hot-soft: #F1D6D4;
  --stage: #E6E6E2; --stage-2: #EFEFEB; --stage-ink: #121212; --stage-sub: #4F4F4C;
  --r: 0px; --r-sm: 0px; --f-display: "Maru Buri", var(--f);
}
[data-theme="newspaper"] .screen h1 { font-family: "Maru Buri", var(--f); font-size: 40px; font-weight: 700; letter-spacing: -0.02em; padding-bottom: 8px; border-bottom: 4px double var(--ink); }
[data-theme="newspaper"] header.top { background: var(--bg); border-bottom: 3px double var(--ink); }
[data-theme="newspaper"] .brand { font-family: "Maru Buri", var(--f); font-size: 18px; }
[data-theme="newspaper"] .tabs { background: var(--bg); border-top: 3px double var(--ink); }
[data-theme="newspaper"] .tabs button[aria-current="page"] { color: var(--hot); }
[data-theme="newspaper"] .card, [data-theme="newspaper"] .mrow, [data-theme="newspaper"] .empty { border: 0; border-top: 1px solid var(--ink); background: transparent; padding-left: 0; padding-right: 0; }
[data-theme="newspaper"] .card.score { border-top: 3px solid var(--ink); }
[data-theme="newspaper"] .card.score.lead { box-shadow: none; }
[data-theme="newspaper"] .big { font-family: "Maru Buri", var(--f); font-size: 76px; letter-spacing: -0.04em; }
[data-theme="newspaper"] .card.now { background: var(--ink); color: var(--surface); padding: 16px; }
[data-theme="newspaper"] .mrow.done .mt { color: var(--hot); }
[data-theme="newspaper"] .mp { color: var(--ink); font-family: "Maru Buri", var(--f); }
[data-theme="newspaper"] button.opt, [data-theme="newspaper"] .cell { border: 1px solid var(--ink); background: transparent; }
[data-theme="newspaper"] .cell.on { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .cell.line { background: var(--hot); color: var(--surface); border-color: var(--hot); }
[data-theme="newspaper"] .tpad { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .tpad.run { background: var(--hot); }
[data-theme="newspaper"] .notice { background: transparent; color: var(--ink); border: 2px solid var(--ink); font-weight: 700; }
[data-theme="newspaper"] .tag { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .mega { font-family: "Maru Buri", var(--f); font-weight: 700; letter-spacing: -0.03em; border-bottom: 1vh double var(--ink); padding-bottom: 2vh; }
[data-theme="newspaper"] .kicker, [data-theme="newspaper"] .dark .kicker { color: var(--hot); letter-spacing: 0.2em; }
[data-theme="newspaper"] .wcard { background: var(--bg); color: var(--ink); border-top: 2.4vh double var(--ink); }
[data-theme="newspaper"] .wcard.c2, [data-theme="newspaper"] .wcard.c5 { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .wcard.c3 { background: var(--surface); color: var(--ink); }
[data-theme="newspaper"] .wcard.c4 { background: var(--hot); color: var(--surface); }
[data-theme="newspaper"] .wb { font-family: "Maru Buri", var(--f); font-weight: 700; }
[data-theme="newspaper"] .podium { background: var(--bg); color: var(--ink); border-top: 3vh double var(--ink); border-bottom: 3vh double var(--ink); }
[data-theme="newspaper"] .podium .pk { color: var(--hot); }
[data-theme="newspaper"] .podium.p1 { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .podium.p1 .pk { color: #E7A19C; }
[data-theme="newspaper"] .side { border-radius: 0; }
[data-theme="newspaper"] .side.s0 { background: var(--ink); color: var(--surface); }
[data-theme="newspaper"] .side.s1 { background: var(--surface); color: var(--ink); border: 0.4vh solid var(--ink); }
[data-theme="newspaper"] .rlist li { border-bottom: 1px solid var(--ink); }
[data-theme="newspaper"] .rlist li.t1 { background: var(--ink); color: var(--surface); border-radius: 0; }
[data-theme="newspaper"] .rlist li.t1 .rn { color: var(--surface); }
[data-theme="newspaper"] .eopts li, [data-theme="newspaper"] .t-board, [data-theme="newspaper"] .qrwrap, [data-theme="newspaper"] .qlist li { border-radius: 0; border: 0.3vh solid var(--ink); }

/* ---------- 엑셀 ---------- */
[data-theme="excel"] {
  --bg: #FDFEFD; --surface: #FDFEFD; --sunk: #F2F2F2; --ink: #1F1F1F; --sub: #444444; --muted: #616161; --line: #D4D4D4;
  --accent: #217346; --accent-press: #185C37; --accent-ink: #FDFEFD; --accent-soft: #E3F1E8;
  --gold: #FFE699; --gold-ink: #1F1F1F; --hot: #C00000; --hot-soft: #F8D7D7;
  --stage: #FDFEFD; --stage-2: #F2F2F2; --stage-ink: #1F1F1F; --stage-sub: #616161;
  --r: 0px; --r-sm: 0px;
}
[data-theme="excel"] body, [data-theme="excel"] .scr { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='26'%3E%3Cpath d='M72 0V26M0 26H72' stroke='%23E1E1E1' stroke-width='1' fill='none'/%3E%3C/svg%3E"); }
[data-theme="excel"] .screen h1::before { content: "="; color: var(--accent); margin-right: 4px; }
[data-theme="excel"] header.top { background: var(--accent); color: var(--accent-ink); border: 0; }
[data-theme="excel"] header.top .who { color: #CDE8D6; }
[data-theme="excel"] .tabs { background: var(--sunk); border-top: 1px solid var(--line); }
[data-theme="excel"] .tabs button[aria-current="page"] { background: var(--surface); color: var(--accent); box-shadow: inset 0 -3px 0 var(--accent); }
[data-theme="excel"] .card, [data-theme="excel"] .mrow, [data-theme="excel"] .empty, [data-theme="excel"] button.opt, [data-theme="excel"] .cell { border: 1px solid var(--line); box-shadow: none; }
[data-theme="excel"] .card.score { position: relative; border: 2px solid var(--accent); }
[data-theme="excel"] .card.score::after { content: ""; position: absolute; right: -5px; bottom: -5px; width: 8px; height: 8px; background: var(--accent); border: 1px solid var(--surface); }
[data-theme="excel"] .card.score.lead { background: var(--gold); box-shadow: none; }
[data-theme="excel"] .card.now { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
[data-theme="excel"] .card.now .label, [data-theme="excel"] .card.now .chase { color: #CDE8D6; }
[data-theme="excel"] .mrow.done { background: var(--accent-soft); border-color: var(--accent); }
[data-theme="excel"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="excel"] .cell.line { background: var(--gold); color: var(--gold-ink); border: 2px solid var(--accent); }
[data-theme="excel"] .tpad { background: var(--accent); color: var(--accent-ink); }
[data-theme="excel"] .tpad.run { background: #185C37; }
[data-theme="excel"] .notice { background: var(--surface); color: var(--ink); border: 1px solid var(--line); font-weight: 500; }
[data-theme="excel"] .notice::before { content: "fx"; display: inline-block; margin-right: 10px; padding-right: 10px; border-right: 1px solid var(--line); color: var(--muted); font-weight: 700; }
[data-theme="excel"] .tag { background: var(--accent-soft); color: var(--accent); }
[data-theme="excel"] .btn { border-radius: 2px; }
[data-theme="excel"] .dark .kicker, [data-theme="excel"] .kicker { color: var(--accent); }
[data-theme="excel"] .pin, [data-theme="excel"] .count, [data-theme="excel"] .t-cnt, [data-theme="excel"] .p-live b { color: var(--accent); }
[data-theme="excel"] .pstate.on { color: var(--hot); }
[data-theme="excel"] .mega::before { content: "="; color: var(--accent); }
[data-theme="excel"] .wcard { color: var(--accent-ink); border: 0.8vh solid var(--accent); }
[data-theme="excel"] .wcard.c1, [data-theme="excel"] .wcard.c5 { background: var(--accent); }
[data-theme="excel"] .wcard.c2 { background: #1F1F1F; }
[data-theme="excel"] .wcard.c3, [data-theme="excel"] .wcard.c6 { background: var(--gold); color: var(--gold-ink); }
[data-theme="excel"] .wcard.c4 { background: var(--surface); color: var(--ink); }
[data-theme="excel"] .podium { color: var(--accent-ink); }
[data-theme="excel"] .podium.p1 { background: var(--gold); color: var(--gold-ink); box-shadow: inset 0 0 0 1.2vh var(--accent); }
[data-theme="excel"] .side { border-radius: 0; }
[data-theme="excel"] .side.s0 { background: var(--accent); color: var(--accent-ink); }
[data-theme="excel"] .side.s1 { background: var(--surface); color: var(--ink); border: 0.3vh solid var(--line); }
[data-theme="excel"] .side.win { box-shadow: 0 0 0 0.8vh var(--accent); }
[data-theme="excel"] .rlist li { border-bottom: 1px solid var(--line); }
[data-theme="excel"] .rlist li.t1 { border-radius: 0; box-shadow: inset 0 0 0 0.4vh var(--accent); }
[data-theme="excel"] .eopts li, [data-theme="excel"] .t-board, [data-theme="excel"] .qrwrap, [data-theme="excel"] .qlist li { border-radius: 0; border: 0.2vh solid var(--line); }

/* ---------- 탑승권 ---------- */
[data-theme="boarding"] {
  --bg: #EAF1F7; --surface: #FDFEFD; --sunk: #DCE6EF; --ink: #0F1E2E; --sub: #34465A; --muted: #56677A; --line: #C5D3E0;
  --accent: #0B2D5C; --accent-press: #082246; --accent-ink: #FDFEFD; --accent-soft: #DCE6F5;
  --gold: #FFB703; --gold-ink: #0F1E2E; --hot: #FF6A13; --hot-soft: #FFE3D2;
  --stage: #101418; --stage-2: #1C232B; --stage-ink: #F2F5F8; --stage-sub: #9AA8B6;
  --r: 14px; --r-sm: 8px;
}
[data-theme="boarding"] header.top { background: var(--accent); color: var(--accent-ink); border: 0; }
[data-theme="boarding"] header.top .who { color: #B9C9E3; }
[data-theme="boarding"] .tabs { border-top: 1px solid var(--line); }
[data-theme="boarding"] .tabs button[aria-current="page"] { color: var(--hot); }
[data-theme="boarding"] .screen h1 { font-weight: 900; letter-spacing: -0.02em; }
[data-theme="boarding"] .card { position: relative; border: 0; padding-right: 64px; box-shadow: 0 2px 0 var(--line); }
[data-theme="boarding"] .card::before { content: ""; position: absolute; top: 12px; bottom: 12px; right: 48px; border-left: 2px dashed var(--line); }
[data-theme="boarding"] .card::after { content: "탑승권"; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); writing-mode: vertical-rl; font-size: 12px; font-weight: 800; letter-spacing: 0.3em; color: var(--muted); }
[data-theme="boarding"] .card.score.lead { box-shadow: inset 0 0 0 2px var(--gold); }
[data-theme="boarding"] .card.now { background: var(--accent); color: var(--accent-ink); }
[data-theme="boarding"] .card.now::after { color: #B9C9E3; }
[data-theme="boarding"] .card.now::before { border-color: #3A5785; }
[data-theme="boarding"] .card.now .label, [data-theme="boarding"] .card.now .chase { color: #B9C9E3; }
[data-theme="boarding"] .mrow { border: 0; border-bottom: 1px dashed var(--line); border-radius: 0; background: transparent; }
[data-theme="boarding"] .mrow.done { background: transparent; }
[data-theme="boarding"] .mrow.done .mt small.ok { color: #1E8E3E; }
[data-theme="boarding"] .mp { color: var(--hot); }
[data-theme="boarding"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="boarding"] .cell.line { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .tpad { background: var(--stage); color: var(--gold); font-family: "Galmuri11", var(--f); }
[data-theme="boarding"] .tpad.run { background: var(--hot); color: var(--accent-ink); }
[data-theme="boarding"] .notice { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .tag { background: var(--accent-soft); color: var(--accent); }
[data-theme="boarding"] .mega, [data-theme="boarding"] .pn, [data-theme="boarding"] .rname, [data-theme="boarding"] .rt, [data-theme="boarding"] .wb { font-family: "Galmuri11", var(--f); letter-spacing: 0.02em; }
[data-theme="boarding"] .mega { position: relative; display: inline-block; align-self: flex-start; background: var(--stage-2); color: var(--gold); padding: 1.6vh 2vw; border-radius: 1vh; }
[data-theme="boarding"] .mega::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 0.3vh; background: var(--stage); }
[data-theme="boarding"] .rlist li { background: var(--stage-2); margin: 0.3vh 0; border-radius: 0.6vh; border: 0; color: var(--gold); }
[data-theme="boarding"] .rlist li .rt { color: var(--gold); }
[data-theme="boarding"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .rlist li.t1 .rt { color: var(--gold-ink); }
[data-theme="boarding"] .wcard.c1, [data-theme="boarding"] .wcard.c6 { background: var(--accent); }
[data-theme="boarding"] .wcard.c2 { background: var(--stage); }
[data-theme="boarding"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .wcard.c4 { background: var(--hot); }
[data-theme="boarding"] .wcard.c5 { background: var(--stage-2); }
[data-theme="boarding"] .wcard .wb { color: inherit; }
[data-theme="boarding"] .podium { background: var(--stage); color: var(--gold); }
[data-theme="boarding"] .podium .pn { background: var(--stage-2); padding: 1vh 3vw; border-radius: 1.4vh; }
[data-theme="boarding"] .podium.p1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .podium.p1 .pn { background: #FFCB45; }
[data-theme="boarding"] .side.s0 { background: var(--gold); color: var(--gold-ink); }
[data-theme="boarding"] .side.s1 { background: var(--stage-ink); color: var(--stage); }

/* ---------- 이정표 ---------- */
[data-theme="trailsign"] {
  --bg: #E8EEE4; --surface: #F7F8F4; --sunk: #DCE5D6; --ink: #1F2A1C; --sub: #3E4B39; --muted: #56634F; --line: #B9C7B1;
  --accent: #5A3A22; --accent-press: #47301C; --accent-ink: #F7F8F4; --accent-soft: #DCE5D6;
  --gold: #F28C28; --gold-ink: #1F1A12; --hot: #D9480F; --hot-soft: #FBE0D2;
  --stage: #2F4A2A; --stage-2: #3B5A35; --stage-ink: #F7F8F4; --stage-sub: #BFD0B8;
  --r: 6px; --r-sm: 4px; --f-display: "Paperlogy", var(--f);
}
[data-theme="trailsign"] .screen h1 { font-weight: 900; }
[data-theme="trailsign"] header.top { background: var(--stage); color: var(--stage-ink); border: 0; }
[data-theme="trailsign"] header.top .who { color: var(--stage-sub); }
[data-theme="trailsign"] .tabs { border-top: 3px solid var(--accent); }
[data-theme="trailsign"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="trailsign"] .card { border: 2px solid var(--accent); }
[data-theme="trailsign"] .card.score, [data-theme="trailsign"] .card.now { background: var(--accent); color: var(--accent-ink); border-color: #3E2815; box-shadow: inset 0 0 0 4px #6E4A2E; }
[data-theme="trailsign"] .card.score .label, [data-theme="trailsign"] .card.score .chase, [data-theme="trailsign"] .card.now .label, [data-theme="trailsign"] .card.now .chase, [data-theme="trailsign"] .card.score .live { color: #E2D6C8; }
[data-theme="trailsign"] .card.score.lead { background: var(--stage-2); border-color: var(--stage); box-shadow: inset 0 0 0 4px var(--gold); }
[data-theme="trailsign"] .mrow { background: var(--accent); color: var(--accent-ink); border: 0; clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 50%, calc(100% - 22px) 100%, 0 100%); padding-right: 30px; }
[data-theme="trailsign"] .mrow .mt small { color: #E2D6C8; }
[data-theme="trailsign"] .mrow .mp { color: var(--gold); }
[data-theme="trailsign"] .mrow svg { stroke: #E2D6C8; }
[data-theme="trailsign"] .mrow.done { background: var(--stage-2); }
[data-theme="trailsign"] .mrow.done .mt small.ok { color: #CFE8C4; }
[data-theme="trailsign"] .cell { border: 2px solid var(--accent); }
[data-theme="trailsign"] .cell.on { background: var(--stage-2); color: var(--stage-ink); }
[data-theme="trailsign"] .cell.line { background: var(--gold); color: var(--gold-ink); }
[data-theme="trailsign"] .tpad { background: var(--accent); color: var(--accent-ink); box-shadow: inset 0 0 0 6px #6E4A2E; }
[data-theme="trailsign"] .tpad.run { background: var(--gold); color: var(--gold-ink); }
[data-theme="trailsign"] .notice { background: var(--gold); color: var(--gold-ink); }
[data-theme="trailsign"] .tag { background: var(--accent); color: var(--accent-ink); }
[data-theme="trailsign"] .wcard { background: var(--accent); box-shadow: inset 0 0 0 1.4vh #3E2815; }
[data-theme="trailsign"] .wcard.c2, [data-theme="trailsign"] .wcard.c6 { background: var(--stage); }
[data-theme="trailsign"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="trailsign"] .wcard.c4 { background: var(--stage-2); }
[data-theme="trailsign"] .podium { background: var(--accent); box-shadow: inset 0 0 0 2vh #3E2815; }
[data-theme="trailsign"] .podium.p1 { background: var(--gold); color: var(--gold-ink); box-shadow: inset 0 0 0 2vh #B35E12; }
[data-theme="trailsign"] .side { border-radius: 0; }
[data-theme="trailsign"] .side.s0 { background: var(--accent); clip-path: polygon(0 0, 92% 0, 100% 50%, 92% 100%, 0 100%); }
[data-theme="trailsign"] .side.s1 { background: var(--stage-ink); color: var(--ink); clip-path: polygon(8% 0, 100% 0, 100% 100%, 8% 100%, 0 50%); }
[data-theme="trailsign"] .rlist li { background: var(--stage-2); margin: 0.3vh 0; border: 0; clip-path: polygon(0 0, calc(100% - 3vh) 0, 100% 50%, calc(100% - 3vh) 100%, 0 100%); padding-right: 4vh; }
[data-theme="trailsign"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); }

/* ---------- 뉴스 속보 ---------- */
[data-theme="breaking"] {
  --bg: #F2F4F7; --surface: #FDFEFD; --sunk: #E3E7ED; --ink: #0E1726; --sub: #344055; --muted: #556075; --line: #C9D0DB;
  --accent: #0B3D91; --accent-press: #082E6E; --accent-ink: #FDFEFD; --accent-soft: #DCE5F5;
  --gold: #D7141E; --gold-ink: #FDFEFD; --hot: #D7141E; --hot-soft: #FADADB;
  --stage: #0B1F3F; --stage-2: #132C55; --stage-ink: #FDFEFD; --stage-sub: #AFC0DB;
  --r: 2px; --r-sm: 2px;
}
[data-theme="breaking"] .screen h1 { display: inline-block; align-self: flex-start; background: var(--accent); color: var(--accent-ink); padding: 6px 14px 6px 10px; font-size: 26px; }
[data-theme="breaking"] .screen h1::before { content: "속보"; background: var(--hot); color: var(--accent-ink); padding: 2px 8px; margin-right: 10px; font-size: 18px; vertical-align: 3px; }
[data-theme="breaking"] header.top { background: var(--hot); color: var(--accent-ink); border: 0; }
[data-theme="breaking"] header.top .who { color: #FCE1E2; }
[data-theme="breaking"] .tabs { background: var(--accent); border: 0; }
[data-theme="breaking"] .tabs button { color: var(--stage-sub); }
[data-theme="breaking"] .tabs button[aria-current="page"] { color: var(--accent-ink); box-shadow: inset 0 3px 0 var(--hot); }
[data-theme="breaking"] .card { border: 0; border-top: 4px solid var(--accent); }
[data-theme="breaking"] .card.score.lead { border-top-color: var(--hot); box-shadow: none; }
[data-theme="breaking"] .card.now { background: var(--hot); color: var(--accent-ink); border-top-color: var(--accent); }
[data-theme="breaking"] .card.now .label, [data-theme="breaking"] .card.now .chase { color: #FCE1E2; }
[data-theme="breaking"] .mrow { border: 0; border-bottom: 2px solid var(--accent); }
[data-theme="breaking"] .mrow.done { background: var(--accent-soft); border-bottom-color: var(--accent); }
[data-theme="breaking"] .mp { color: var(--hot); }
[data-theme="breaking"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="breaking"] .cell.line { background: var(--hot); color: var(--accent-ink); }
[data-theme="breaking"] .tpad { background: var(--accent); color: var(--accent-ink); }
[data-theme="breaking"] .tpad.run { background: var(--hot); }
[data-theme="breaking"] .notice { background: var(--ink); color: var(--accent-ink); }
[data-theme="breaking"] .notice::before { content: "속보"; background: var(--hot); padding: 2px 8px; margin-right: 10px; font-weight: 900; }
[data-theme="breaking"] .tag { background: var(--hot); color: var(--accent-ink); }
[data-theme="breaking"] .s-foot { left: 0; right: 0; bottom: 0; height: 5vh; padding: 0 3vw; align-items: center; background: var(--hot); color: var(--accent-ink); font-size: 2.4vh; font-weight: 700; }
[data-theme="breaking"] .dark .s-foot { color: var(--accent-ink); }
[data-theme="breaking"] .stage { padding-bottom: 9vh; }
[data-theme="breaking"] .kicker, [data-theme="breaking"] .dark .kicker { display: inline-block; align-self: flex-start; background: var(--hot); color: var(--accent-ink); padding: 0.6vh 1.2vw; }
[data-theme="breaking"] .mega { display: inline-block; align-self: flex-start; background: var(--surface); color: var(--accent); padding: 1.4vh 2.4vw; }
[data-theme="breaking"] .center .mega, [data-theme="breaking"] .center .kicker { align-self: center; }
[data-theme="breaking"] .wcard.c1, [data-theme="breaking"] .wcard.c6 { background: var(--accent); }
[data-theme="breaking"] .wcard.c2, [data-theme="breaking"] .wcard.c5 { background: var(--hot); }
[data-theme="breaking"] .wcard.c3 { background: var(--surface); color: var(--accent); }
[data-theme="breaking"] .wcard.c4 { background: var(--stage-2); }
[data-theme="breaking"] .podium { background: var(--stage); }
[data-theme="breaking"] .podium .pn { background: var(--surface); color: var(--accent); padding: 1vh 3vw; }
[data-theme="breaking"] .podium .pk { background: var(--hot); color: var(--accent-ink); padding: 0.6vh 2vw; }
[data-theme="breaking"] .podium.p1 { background: var(--hot); color: var(--accent-ink); }
[data-theme="breaking"] .podium.p1 .pn { color: var(--hot); }
[data-theme="breaking"] .podium.p1 .pk { background: var(--accent); }
[data-theme="breaking"] .side { border-radius: 0; }
[data-theme="breaking"] .side.s0 { background: var(--hot); }
[data-theme="breaking"] .side.s1 { background: var(--surface); color: var(--accent); }
[data-theme="breaking"] .rlist li.t1 { background: var(--hot); color: var(--accent-ink); border-radius: 0; }
[data-theme="breaking"] .pin, [data-theme="breaking"] .count, [data-theme="breaking"] .t-cnt, [data-theme="breaking"] .p-live b { color: var(--surface); }

/* ---------- 포스트잇 ---------- */
[data-theme="postit"] {
  --bg: #F1F3F6; --surface: #FDFEFD; --sunk: #E4E8EE; --ink: #22252A; --sub: #3F444C; --muted: #5A616B; --line: #D3D9E0;
  --accent: #2F6FEB; --accent-press: #2258C2; --accent-ink: #FDFEFD; --accent-soft: #DCE7FC;
  --gold: #FFE873; --gold-ink: #22252A; --hot: #E5484D; --hot-soft: #FCDADB;
  --stage: #EEF1F4; --stage-2: #FDFEFD; --stage-ink: #22252A; --stage-sub: #5A616B;
  --r: 3px; --r-sm: 3px; --f-display: "Nanum Pen", var(--f);
}
[data-theme="postit"] .screen h1 { font-family: "Nanum Pen", var(--f); font-size: 46px; font-weight: 400; letter-spacing: 0; line-height: 1; }
[data-theme="postit"] .big, [data-theme="postit"] .tnum { font-family: "Nanum Pen", var(--f); font-weight: 400; font-size: 72px; }
[data-theme="postit"] header.top { background: var(--surface); border-bottom: 3px solid var(--ink); }
[data-theme="postit"] .brand { font-family: "Nanum Pen", var(--f); font-size: 24px; font-weight: 400; }
[data-theme="postit"] .tabs button[aria-current="page"] { color: var(--accent); text-decoration: underline wavy; text-underline-offset: 4px; }
[data-theme="postit"] .card { position: relative; border: 0; border-radius: 2px; background: #FFE873; box-shadow: 0 8px 12px -8px rgba(34, 37, 42, .45); transform: rotate(-0.8deg); }
[data-theme="postit"] .card::before { content: ""; position: absolute; top: -9px; left: 50%; width: 76px; height: 20px; margin-left: -38px; background: rgba(253, 254, 253, .65); border: 1px solid rgba(34, 37, 42, .08); transform: rotate(-3deg); }
[data-theme="postit"] .card.now { background: #FFB3C7; color: var(--ink); transform: rotate(0.8deg); }
[data-theme="postit"] .card.now .label, [data-theme="postit"] .card.now .chase { color: var(--sub); }
[data-theme="postit"] .card.score.lead { background: #FFE873; box-shadow: 0 8px 12px -8px rgba(34, 37, 42, .45), inset 0 0 0 2px var(--hot); }
[data-theme="postit"] .card.namecard, [data-theme="postit"] .card.game { background: #A8DAFF; transform: rotate(0.6deg); }
[data-theme="postit"] .card.bamboo, [data-theme="postit"] .card.poll { background: #C2F0A8; transform: rotate(-0.5deg); }
[data-theme="postit"] .mrow { border: 1px dashed var(--line); background: var(--surface); }
[data-theme="postit"] .mrow.done { background: #C2F0A8; border-style: solid; border-color: #9DCC83; transform: rotate(0.4deg); }
[data-theme="postit"] .mp { color: var(--hot); font-family: "Nanum Pen", var(--f); font-size: 22px; font-weight: 400; }
[data-theme="postit"] .cell { border: 0; background: #FFE873; box-shadow: 0 5px 8px -6px rgba(34, 37, 42, .5); }
[data-theme="postit"] .cell:nth-child(even) { transform: rotate(1.5deg); }
[data-theme="postit"] .cell:nth-child(odd) { transform: rotate(-1.2deg); }
[data-theme="postit"] .cell.on { background: #A8DAFF; color: var(--ink); }
[data-theme="postit"] .cell.line { background: #FFB3C7; color: var(--ink); }
[data-theme="postit"] .tpad { background: var(--ink); color: #FFE873; }
[data-theme="postit"] .tpad.run { background: var(--accent); color: var(--accent-ink); }
[data-theme="postit"] .notice { background: #FFB3C7; color: var(--ink); transform: rotate(-0.6deg); box-shadow: 0 8px 12px -8px rgba(34, 37, 42, .45); }
[data-theme="postit"] .tag { background: transparent; color: var(--accent); border: 2px solid var(--accent); }
[data-theme="postit"] .btn { border-radius: 4px; }
[data-theme="postit"] .mega, [data-theme="postit"] .pn, [data-theme="postit"] .wb, [data-theme="postit"] .side .opt { font-family: "Nanum Pen", var(--f); font-weight: 400; letter-spacing: 0; }
[data-theme="postit"] .mega { font-size: 18vh; }
[data-theme="postit"] .kicker, [data-theme="postit"] .dark .kicker { color: var(--accent); }
[data-theme="postit"] .pin, [data-theme="postit"] .count, [data-theme="postit"] .t-cnt { color: var(--ink); font-family: "Nanum Pen", var(--f); font-weight: 400; }
[data-theme="postit"] .p-live b, [data-theme="postit"] .pstate.on { color: var(--hot); }
[data-theme="postit"] .wcard { inset: 7vh 10vw; background: #FFE873; color: var(--ink); transform: rotate(-1deg); box-shadow: 0 2vh 3vh -2vh rgba(34, 37, 42, .45); }
[data-theme="postit"] .wcard.c2 { background: #FFB3C7; transform: rotate(1deg); }
[data-theme="postit"] .wcard.c3 { background: #A8DAFF; }
[data-theme="postit"] .wcard.c4 { background: #C2F0A8; transform: rotate(0.8deg); }
[data-theme="postit"] .wcard.c6 { background: #FFB3C7; }
[data-theme="postit"] .wb { font-size: 16vh; }
[data-theme="postit"] .podium { inset: 7vh 12vw; background: #FFE873; color: var(--ink); transform: rotate(-1deg); box-shadow: 0 2vh 3vh -2vh rgba(34, 37, 42, .45); }
[data-theme="postit"] .podium.p1 { background: #FFB3C7; color: var(--ink); transform: rotate(1deg); }
[data-theme="postit"] .pn { font-size: 20vh; }
[data-theme="postit"] .side { border-radius: 0.4vh; color: var(--ink); box-shadow: 0 2vh 3vh -2vh rgba(34, 37, 42, .45); }
[data-theme="postit"] .side.s0 { background: #FFE873; transform: rotate(-1deg); }
[data-theme="postit"] .side.s1 { background: #A8DAFF; color: var(--ink); transform: rotate(1deg); }
[data-theme="postit"] .side .opt { font-size: 8vh; }
[data-theme="postit"] .rlist li.t1 { background: #FFE873; color: var(--ink); }
[data-theme="postit"] .eopts li, [data-theme="postit"] .t-board { background: var(--surface); color: var(--ink); box-shadow: 0 1vh 2vh -1vh rgba(34, 37, 42, .35); }

/* ---------- 노선도 ---------- */
[data-theme="subway"] {
  --bg: #F5F6F7; --surface: #FDFEFD; --sunk: #E8EAED; --ink: #1A1D21; --sub: #3C4249; --muted: #5A616B; --line: #D4D8DD;
  --accent: #00A84D; --accent-press: #008A3F; --accent-ink: #FDFEFD; --accent-soft: #DDF3E6;
  --gold: #F5A200; --gold-ink: #1A1D21; --hot: #E6186C; --hot-soft: #FCDCE8;
  --stage: #FDFEFD; --stage-2: #F1F3F5; --stage-ink: #1A1D21; --stage-sub: #5A616B;
  --r: 12px; --r-sm: 8px;
}
[data-theme="subway"] header.top { background: var(--surface); border-bottom: 6px solid var(--accent); }
[data-theme="subway"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="subway"] .screen h1 { font-weight: 900; }
[data-theme="subway"] .card { border: 2px solid var(--line); }
[data-theme="subway"] .card.score .big { color: var(--accent); }
[data-theme="subway"] .card.score.lead { border-color: var(--gold); box-shadow: none; }
[data-theme="subway"] .card.now { background: #0052A4; color: var(--accent-ink); border-color: #0052A4; }
[data-theme="subway"] .card.now .label, [data-theme="subway"] .card.now .chase { color: #CFE0F5; }
[data-theme="subway"] .missions { border-left: 6px solid var(--accent); margin-left: 14px; gap: 6px; }
[data-theme="subway"] .mrow { position: relative; border: 0; background: transparent; padding-left: 26px; border-radius: 0; }
[data-theme="subway"] .mrow::before { content: ""; position: absolute; left: -15px; top: 50%; width: 18px; height: 18px; margin-top: -9px; border-radius: 50%; border: 5px solid var(--accent); background: var(--surface); }
[data-theme="subway"] .mrow.done { background: transparent; }
[data-theme="subway"] .mrow.done::before { background: var(--accent); }
[data-theme="subway"] .timeline { border-left: 6px solid var(--gold); margin-left: 10px; border-top: 0; }
[data-theme="subway"] .timeline li { position: relative; padding-left: 20px; border-bottom: 0; }
[data-theme="subway"] .timeline li::before { content: ""; position: absolute; left: -13px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 50%; border: 4px solid var(--gold); background: var(--surface); }
[data-theme="subway"] .timeline li.past::before { background: var(--gold); }
[data-theme="subway"] .cell { border-radius: 50%; border: 4px solid var(--line); }
[data-theme="subway"] .cell.on { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
[data-theme="subway"] .cell.line { background: var(--gold); color: var(--gold-ink); border-color: var(--gold); }
[data-theme="subway"] .tpad { background: var(--accent); color: var(--accent-ink); border-radius: 24px; }
[data-theme="subway"] .tpad.run { background: #0052A4; }
[data-theme="subway"] .notice { background: var(--ink); color: var(--accent-ink); }
[data-theme="subway"] .tag { background: var(--accent); color: var(--accent-ink); }
[data-theme="subway"] .kicker, [data-theme="subway"] .dark .kicker { color: var(--accent); }
[data-theme="subway"] .pin, [data-theme="subway"] .count, [data-theme="subway"] .t-cnt, [data-theme="subway"] .p-live b { color: var(--accent); }
[data-theme="subway"] .pstate.on { color: var(--hot); }
[data-theme="subway"] .wcard { color: var(--accent-ink); border-bottom: 2.4vh solid var(--ink); }
[data-theme="subway"] .wcard.c1, [data-theme="subway"] .wcard.c6 { background: var(--accent); }
[data-theme="subway"] .wcard.c2 { background: #0052A4; }
[data-theme="subway"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="subway"] .wcard.c4 { background: var(--hot); }
[data-theme="subway"] .wcard.c5 { background: var(--ink); border-bottom-color: var(--accent); }
[data-theme="subway"] .podium { color: #FDFEFD; }
[data-theme="subway"] .podium.p1 { color: var(--gold-ink); }
[data-theme="subway"] .side.s0 { background: var(--accent); color: var(--accent-ink); }
[data-theme="subway"] .side.s1 { background: #0052A4; color: var(--accent-ink); }
[data-theme="subway"] .rlist { border-left: 1.2vh solid var(--accent); margin-left: 3vw; }
[data-theme="subway"] .rlist li { position: relative; padding-left: 2vw; border-bottom: 0; }
[data-theme="subway"] .rlist li::before { content: ""; position: absolute; left: -2.3vh; top: 50%; width: 2.2vh; height: 2.2vh; margin-top: -1.1vh; border-radius: 50%; border: 0.8vh solid var(--accent); background: var(--surface); }
[data-theme="subway"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="subway"] .rlist li.t1::before { background: var(--gold); }

/* ---------- 결재판 ---------- */
[data-theme="approval"] {
  --bg: #EEF0F2; --surface: #FDFEFD; --sunk: #E4E7EA; --ink: #1B1F24; --sub: #3A4048; --muted: #5A616A; --line: #1B1F24;
  --accent: #23395B; --accent-press: #1A2B45; --accent-ink: #FDFEFD; --accent-soft: #E1E7F0;
  --gold: #C8102E; --gold-ink: #FDFEFD; --hot: #C8102E; --hot-soft: #F7D6DB;
  --stage: #FDFEFD; --stage-2: #F1F2F4; --stage-ink: #1B1F24; --stage-sub: #5A616A;
  --r: 0px; --r-sm: 0px; --f-display: "Maru Buri", var(--f);
}
[data-theme="approval"] .screen h1 { font-family: "Maru Buri", var(--f); font-weight: 700; letter-spacing: 0.18em; text-align: center; padding-bottom: 10px; border-bottom: 2px solid var(--ink); }
[data-theme="approval"] header.top { background: var(--surface); border-bottom: 3px double var(--ink); }
[data-theme="approval"] .brand { font-family: "Maru Buri", var(--f); }
[data-theme="approval"] .tabs { background: var(--surface); border-top: 3px double var(--ink); }
[data-theme="approval"] .tabs button[aria-current="page"] { color: var(--hot); }
[data-theme="approval"] .card, [data-theme="approval"] .mrow, [data-theme="approval"] .empty, [data-theme="approval"] button.opt, [data-theme="approval"] .cell { border: 1px solid var(--ink); }
[data-theme="approval"] .card.score { position: relative; }
[data-theme="approval"] .card.score::after { content: "검토"; position: absolute; right: 14px; bottom: -16px; width: 54px; height: 54px; display: grid; place-items: center; border: 3px solid var(--hot); border-radius: 50%; color: var(--hot); font: 700 15px "Maru Buri", var(--f); transform: rotate(-12deg); opacity: .9; }
[data-theme="approval"] .card.score.lead { box-shadow: none; }
[data-theme="approval"] .card.score.lead::after { content: "승인"; background: var(--hot); color: var(--surface); }
[data-theme="approval"] .card.now { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
[data-theme="approval"] .card.now .label, [data-theme="approval"] .card.now .chase { color: #C9D4E6; }
[data-theme="approval"] .mrow { position: relative; }
[data-theme="approval"] .mrow.done { background: var(--surface); }
[data-theme="approval"] .mrow.done::after { content: "완료"; position: absolute; right: 128px; top: 50%; width: 38px; height: 38px; margin-top: -19px; opacity: .85; display: grid; place-items: center; border: 2px solid var(--hot); border-radius: 50%; color: var(--hot); font: 700 12px "Maru Buri", var(--f); transform: rotate(-12deg); }
[data-theme="approval"] .mp { color: var(--accent); }
[data-theme="approval"] .cell.on { background: var(--accent); color: var(--accent-ink); }
[data-theme="approval"] .cell.line { background: var(--surface); color: var(--hot); box-shadow: inset 0 0 0 3px var(--hot); }
[data-theme="approval"] .tpad { background: var(--surface); color: var(--ink); border: 2px solid var(--ink); font-family: "Maru Buri", var(--f); }
[data-theme="approval"] .tpad.run { background: var(--accent); color: var(--accent-ink); }
[data-theme="approval"] .notice { background: var(--surface); color: var(--hot); border: 2px solid var(--hot); font-weight: 700; }
[data-theme="approval"] .notice::before { content: "[공지] "; }
[data-theme="approval"] .tag { background: var(--surface); color: var(--ink); border: 1px solid var(--ink); }
[data-theme="approval"] .btn { border-radius: 0; }
[data-theme="approval"] .btn.ghost { border-color: var(--ink); }
[data-theme="approval"] .mega { font-family: "Maru Buri", var(--f); font-weight: 700; letter-spacing: 0.04em; }
[data-theme="approval"] .kicker, [data-theme="approval"] .dark .kicker { color: var(--hot); letter-spacing: 0.2em; }
[data-theme="approval"] .pin, [data-theme="approval"] .count, [data-theme="approval"] .t-cnt, [data-theme="approval"] .p-live b, [data-theme="approval"] .pstate.on { color: var(--hot); }
[data-theme="approval"] .wcard { background: var(--surface); color: var(--ink); box-shadow: inset 0 0 0 1vh var(--surface), inset 0 0 0 1.4vh var(--ink); }
[data-theme="approval"] .wcard.c2, [data-theme="approval"] .wcard.c5 { background: var(--accent); color: var(--accent-ink); box-shadow: inset 0 0 0 1vh var(--accent), inset 0 0 0 1.4vh var(--accent-ink); }
[data-theme="approval"] .wcard.c4 { background: var(--hot); color: var(--surface); box-shadow: inset 0 0 0 1vh var(--hot), inset 0 0 0 1.4vh var(--surface); }
[data-theme="approval"] .wb { font-family: "Maru Buri", var(--f); font-weight: 700; }
[data-theme="approval"] .podium { background: var(--surface); color: var(--ink); box-shadow: inset 0 0 0 2vh var(--surface), inset 0 0 0 2.6vh var(--ink); }
[data-theme="approval"] .podium .pk { width: 22vh; height: 22vh; display: grid; place-items: center; border: 0.8vh solid var(--hot); border-radius: 50%; color: var(--hot); transform: rotate(-10deg); }
[data-theme="approval"] .podium .pn { font-family: "Maru Buri", var(--f); }
[data-theme="approval"] .podium.p1 .pk { background: var(--hot); color: var(--surface); }
[data-theme="approval"] .side { border-radius: 0; }
[data-theme="approval"] .side.s0 { background: var(--accent); color: var(--accent-ink); }
[data-theme="approval"] .side.s1 { background: var(--surface); color: var(--ink); border: 0.4vh solid var(--ink); }
[data-theme="approval"] .rlist li { border-bottom: 1px solid var(--ink); }
[data-theme="approval"] .rlist li.t1 { background: var(--hot); color: var(--surface); border-radius: 0; }
[data-theme="approval"] .rlist li.t1 .rn { color: var(--surface); }
[data-theme="approval"] .eopts li, [data-theme="approval"] .t-board, [data-theme="approval"] .qrwrap, [data-theme="approval"] .qlist li { border-radius: 0; border: 0.3vh solid var(--ink); }
[data-theme="excel"] .esub { color: var(--accent); }
[data-theme="postit"] .esub { color: var(--hot); font-family: "Nanum Pen", var(--f); font-weight: 400; font-size: 6vh; }

/* ===== 시안 21~23: 부제 "함께 걷는 가을"
   danpung: 단풍길. 회색 종이에 단풍 빨강과 호박색, 점선 산책길, 잎사귀 모양 딱지
   postcard: 가을 엽서. 항공우편 줄무늬, 우표 모서리, 2026.10.16 소인, 손글씨 제목
   ginkgo: 은행나무 산책. 은행잎 노랑, 나무껍질 갈색, 하늘색, 발자국 점, 둥근 카드 */

/* ---------- 단풍길 ---------- */
[data-theme="danpung"] {
  --bg: #ECEBE8; --surface: #F8F7F5; --sunk: #E0DEDA; --ink: #2A1D17; --sub: #4A3A33; --muted: #6A5A52; --line: #D3CEC8;
  --accent: #B83A24; --accent-press: #9A2F1C; --accent-ink: #F8F7F5; --accent-soft: #F3DCD5;
  --gold: #E0892B; --gold-ink: #2A1D17; --hot: #B83A24; --hot-soft: #F3DCD5;
  --stage: #2B1A16; --stage-2: #3D2620; --stage-ink: #F8F7F5; --stage-sub: #D6B9AE;
  --r: 14px; --r-sm: 10px; --f-display: "Paperlogy", var(--f);
}
[data-theme="danpung"] .screen h1 { font-weight: 900; color: var(--ink); }
[data-theme="danpung"] header.top { background: var(--bg); border-bottom: 3px dotted var(--gold); }
[data-theme="danpung"] .tabs { border-top: 3px dotted var(--gold); }
[data-theme="danpung"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="danpung"] .card { border: 0; box-shadow: 0 1px 0 var(--line); }
[data-theme="danpung"] .card.score.lead { background: #FBEFE2; box-shadow: inset 0 0 0 2px var(--gold); }
[data-theme="danpung"] .card.now { background: var(--accent); }
[data-theme="danpung"] .card.now .label, [data-theme="danpung"] .card.now .chase { color: #F6D5CB; }
[data-theme="danpung"] .timeline { border-top: 0; border-left: 3px dotted var(--gold); margin-left: 8px; }
[data-theme="danpung"] .timeline li { padding-left: 16px; border-bottom: 0; position: relative; }
[data-theme="danpung"] .timeline li.now::after { content: ""; position: absolute; left: -10px; top: 50%; width: 16px; height: 16px; margin-top: -8px; background: var(--accent); border-radius: 0 60% 0 60%; transform: rotate(45deg); }
[data-theme="danpung"] .missions { border-left: 3px dotted var(--gold); margin-left: 10px; padding-left: 14px; }
[data-theme="danpung"] .mrow { border: 0; box-shadow: 0 1px 0 var(--line); position: relative; }
[data-theme="danpung"] .mrow::before { content: ""; position: absolute; left: -24px; top: 50%; width: 14px; height: 14px; margin-top: -7px; background: var(--sunk); border: 2px solid var(--gold); border-radius: 0 60% 0 60%; }
[data-theme="danpung"] .mrow.done { background: var(--surface); }
[data-theme="danpung"] .mrow.done::before { background: var(--accent); border-color: var(--accent); }
[data-theme="danpung"] .mp { color: var(--accent); }
[data-theme="danpung"] .cell { border: 0; border-radius: 6px 24px 6px 24px; background: var(--surface); }
[data-theme="danpung"] .cell.on { background: var(--gold); color: var(--gold-ink); }
[data-theme="danpung"] .cell.line { background: var(--accent); color: var(--accent-ink); }
[data-theme="danpung"] .tpad { background: var(--stage); color: var(--stage-ink); border-radius: 10px 44px 10px 44px; }
[data-theme="danpung"] .tpad.run { background: var(--accent); }
[data-theme="danpung"] .notice { background: var(--gold); color: var(--gold-ink); }
[data-theme="danpung"] .tag { background: var(--accent); color: var(--accent-ink); border-radius: 0 10px 0 10px; }
[data-theme="danpung"] .btn { border-radius: 8px 22px 8px 22px; }
[data-theme="danpung"] .wcard.c1, [data-theme="danpung"] .wcard.c6 { background: var(--accent); }
[data-theme="danpung"] .wcard.c2 { background: var(--stage); }
[data-theme="danpung"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="danpung"] .wcard.c4 { background: #7A2E1F; }
[data-theme="danpung"] .wcard.c5 { background: var(--stage-2); }
[data-theme="danpung"] .wcard { box-shadow: inset 0 -2.4vh 0 -1.6vh var(--gold); }
[data-theme="danpung"] .podium.p1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="danpung"] .side { border-radius: 2vh 8vh 2vh 8vh; }
[data-theme="danpung"] .side.s0 { background: var(--accent); }
[data-theme="danpung"] .side.s1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="danpung"] .rlist { border-left: 0.5vh dotted var(--gold); padding-left: 1.4vw; }
[data-theme="danpung"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); border-radius: 1vh 4vh 1vh 4vh; }
[data-theme="danpung"] .qrwrap, [data-theme="danpung"] .eopts li, [data-theme="danpung"] .t-board { border-radius: 2vh 6vh 2vh 6vh; }

/* ---------- 가을 엽서 ---------- */
[data-theme="postcard"] {
  --bg: #E9EDF0; --surface: #FDFEFD; --sunk: #DDE3E8; --ink: #1E2A3A; --sub: #3A4859; --muted: #556275; --line: #C9D2DB;
  --accent: #2F4A7A; --accent-press: #243A61; --accent-ink: #FDFEFD; --accent-soft: #DCE4F1;
  --gold: #D9A441; --gold-ink: #1E2A3A; --hot: #B23A2A; --hot-soft: #F3D9D5;
  --stage: #E9EDF0; --stage-2: #FDFEFD; --stage-ink: #1E2A3A; --stage-sub: #556275;
  --r: 4px; --r-sm: 3px; --f-display: var(--f);
}
[data-theme="postcard"] .screen h1 { font-family: "Nanum Pen", var(--f); font-size: 44px; font-weight: 400; color: var(--accent); line-height: 1; }
[data-theme="postcard"] header.top { background-color: var(--surface); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='6'%3E%3Cpath d='M0 6L6 0H16L10 6Z' fill='%23B23A2A'/%3E%3Cpath d='M20 6L26 0H36L30 6Z' fill='%232F4A7A'/%3E%3C/svg%3E"); background-repeat: repeat-x; background-position: left bottom; padding-bottom: 16px; border: 0; }
[data-theme="postcard"] .tabs { border-top: 1px solid var(--line); }
[data-theme="postcard"] .tabs button[aria-current="page"] { color: var(--hot); }
[data-theme="postcard"] .card { position: relative; border: 1px solid var(--line); box-shadow: 0 2px 0 var(--line); }
[data-theme="postcard"] .card.score { padding-right: 112px; }
[data-theme="postcard"] .card.score::after { content: "가을"; position: absolute; right: 12px; top: 12px; width: 52px; height: 62px; display: grid; place-items: center; background: var(--gold); color: var(--gold-ink); font: 400 22px "Nanum Pen", var(--f); outline: 3px dashed var(--surface); outline-offset: -6px; }
[data-theme="postcard"] .card.score::before { content: "2026.10.16"; position: absolute; right: 40px; top: 50px; width: 54px; height: 54px; font-size: 9px; display: grid; place-items: center; border: 2px solid rgba(178, 58, 42, .7); border-radius: 50%; color: rgba(178, 58, 42, .85); font-size: 10px; font-weight: 800; transform: rotate(-14deg); z-index: 1; }
[data-theme="postcard"] .card.score.lead { box-shadow: 0 2px 0 var(--line), inset 0 0 0 2px var(--gold); }
[data-theme="postcard"] .card.now { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
[data-theme="postcard"] .card.now .label, [data-theme="postcard"] .card.now .chase { color: #C9D6EC; }
[data-theme="postcard"] .mrow { border: 1px solid var(--line); }
[data-theme="postcard"] .mrow.done { background: var(--accent-soft); border-color: var(--accent); }
[data-theme="postcard"] .mp { color: var(--hot); }
[data-theme="postcard"] .cell { border: 1px dashed var(--muted); }
[data-theme="postcard"] .cell.on { background: var(--gold); color: var(--gold-ink); border-style: solid; border-color: var(--gold); }
[data-theme="postcard"] .cell.line { background: var(--hot); color: var(--accent-ink); border-color: var(--hot); }
[data-theme="postcard"] .tpad { background: var(--accent); color: var(--accent-ink); }
[data-theme="postcard"] .tpad.run { background: var(--hot); }
[data-theme="postcard"] .notice { background: var(--surface); color: var(--ink); border: 2px solid var(--hot); }
[data-theme="postcard"] .tag { background: var(--gold); color: var(--gold-ink); }
[data-theme="postcard"] .mega, [data-theme="postcard"] .podium .pn, [data-theme="postcard"] .wb, [data-theme="postcard"] .side .opt, [data-theme="postcard"] .scr .esub { font-family: "Nanum Pen", var(--f); font-weight: 400; letter-spacing: 0; }
[data-theme="postcard"] .mega { font-size: 17vh; color: var(--accent); }
[data-theme="postcard"] .scr .esub { font-size: 7vh; color: var(--hot); }
[data-theme="postcard"] .kicker, [data-theme="postcard"] .dark .kicker { color: var(--hot); }
[data-theme="postcard"] .pin, [data-theme="postcard"] .count, [data-theme="postcard"] .t-cnt, [data-theme="postcard"] .p-live b { color: var(--accent); }
[data-theme="postcard"] .pstate.on { color: var(--hot); }
[data-theme="postcard"] .wcard { inset: 6vh 8vw; background: var(--surface); color: var(--ink); border: 1.4vh solid transparent; border-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Crect width='60' height='60' fill='%23FDFEFD'/%3E%3Cpath d='M0 20L20 0H30L0 30ZM30 0H40L10 30H0ZM0 40L40 0H50L0 50Z' fill='%23B23A2A'/%3E%3Cpath d='M20 60L60 20V30L30 60ZM40 60L60 40V50L50 60Z' fill='%232F4A7A'/%3E%3C/svg%3E") 20 round; box-shadow: 0 1.6vh 3vh -2vh rgba(30, 42, 58, .45); }
[data-theme="postcard"] .wcard.c3 { background: var(--gold); }
[data-theme="postcard"] .wcard.c5 { background: var(--accent); color: var(--accent-ink); }
[data-theme="postcard"] .wb { font-size: 16vh; }
[data-theme="postcard"] .podium { inset: 6vh 10vw; background: var(--surface); color: var(--ink); box-shadow: 0 1.6vh 3vh -2vh rgba(30, 42, 58, .45); }
[data-theme="postcard"] .podium::after { content: "10.16"; position: absolute; right: 4vw; top: 5vh; width: 11vh; height: 13vh; display: grid; place-items: center; background: var(--tc); color: var(--accent-ink); font: 400 4vh "Nanum Pen", var(--f); outline: 0.5vh dashed var(--surface); outline-offset: -1.2vh; }
[data-theme="postcard"] .podium .pk { color: var(--hot); }
[data-theme="postcard"] .podium .pn { font-size: 18vh; color: var(--accent); }
[data-theme="postcard"] .podium.p1 { background: var(--gold); }
[data-theme="postcard"] .podium.p1 .pn { color: var(--ink); }
[data-theme="postcard"] .side { border-radius: 0.6vh; }
[data-theme="postcard"] .side.s0 { background: var(--accent); color: var(--accent-ink); }
[data-theme="postcard"] .side.s1 { background: var(--surface); color: var(--ink); border: 0.4vh dashed var(--hot); }
[data-theme="postcard"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="postcard"] .eopts li, [data-theme="postcard"] .t-board { background: var(--surface); box-shadow: 0 1vh 2vh -1vh rgba(30, 42, 58, .35); }

/* ---------- 은행나무 산책 ---------- */
[data-theme="ginkgo"] {
  --bg: #F5F6F1; --surface: #FDFEFD; --sunk: #ECEDE4; --ink: #2B2118; --sub: #4A3E33; --muted: #685B4E; --line: #DCD7C8;
  --accent: #4A3426; --accent-press: #3A281D; --accent-ink: #FDFEFD; --accent-soft: #F7E9C2;
  --gold: #F2C14E; --gold-ink: #2B2118; --hot: #D9480F; --hot-soft: #FBE0D2;
  --stage: #4A3426; --stage-2: #5C4332; --stage-ink: #FDFEFD; --stage-sub: #E8D9C4;
  --r: 22px; --r-sm: 14px; --f-display: "Cafe24 Ssurround", var(--f);
}
[data-theme="ginkgo"] .screen h1 { font-weight: 700; }
[data-theme="ginkgo"] header.top { background: var(--bg); border-bottom: 0; box-shadow: 0 4px 0 var(--gold); }
[data-theme="ginkgo"] .tabs { border-top: 0; box-shadow: 0 -4px 0 var(--gold); }
[data-theme="ginkgo"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="ginkgo"] .card, [data-theme="ginkgo"] .mrow, [data-theme="ginkgo"] .empty { border: 0; box-shadow: 0 2px 8px -4px rgba(74, 52, 38, .35); }
[data-theme="ginkgo"] .card.score { background: var(--gold); }
[data-theme="ginkgo"] .card.score .label, [data-theme="ginkgo"] .card.score .chase, [data-theme="ginkgo"] .card.score .live { color: var(--accent); }
[data-theme="ginkgo"] .card.score.lead { box-shadow: 0 0 0 3px var(--accent); }
[data-theme="ginkgo"] .card.now { background: #8EC5E8; color: var(--ink); }
[data-theme="ginkgo"] .card.now .label, [data-theme="ginkgo"] .card.now .chase { color: #20384A; }
[data-theme="ginkgo"] .timeline { border-top: 0; }
[data-theme="ginkgo"] .timeline li { position: relative; padding-left: 28px; border-bottom: 1px dashed var(--line); }
[data-theme="ginkgo"] .timeline li::before { content: ""; position: absolute; left: 2px; top: 50%; width: 7px; height: 10px; margin-top: -9px; border-radius: 50%; background: var(--line); box-shadow: 9px 8px 0 var(--line); }
[data-theme="ginkgo"] .timeline li.past::before { background: var(--accent); box-shadow: 9px 8px 0 var(--accent); }
[data-theme="ginkgo"] .timeline li.now::before { background: var(--gold); box-shadow: 9px 8px 0 var(--gold); }
[data-theme="ginkgo"] .mrow.done { background: #FDF3D6; }
[data-theme="ginkgo"] .mp { color: var(--accent); }
[data-theme="ginkgo"] .cell { border: 0; box-shadow: 0 2px 8px -4px rgba(74, 52, 38, .35); }
[data-theme="ginkgo"] .cell.on { background: var(--gold); color: var(--gold-ink); border-radius: 50% 50% 18% 18% / 70% 70% 18% 18%; }
[data-theme="ginkgo"] .cell.line { background: #8EC5E8; color: var(--ink); }
[data-theme="ginkgo"] .tpad { background: var(--accent); color: var(--gold); border-radius: 50% 50% 28px 28px / 40% 40% 28px 28px; }
[data-theme="ginkgo"] .tpad.run { background: var(--gold); color: var(--accent); }
[data-theme="ginkgo"] .notice { background: #8EC5E8; color: var(--ink); }
[data-theme="ginkgo"] .tag { background: var(--gold); color: var(--accent); border-radius: 50% 50% 6px 6px / 70% 70% 6px 6px; padding: 5px 9px 4px; }
[data-theme="ginkgo"] .btn { border-radius: 16px; }
[data-theme="ginkgo"] .kicker, [data-theme="ginkgo"] .dark .kicker { color: var(--gold); }
[data-theme="ginkgo"] .wcard { border-radius: 0; }
[data-theme="ginkgo"] .wcard.c1, [data-theme="ginkgo"] .wcard.c6 { background: var(--stage); }
[data-theme="ginkgo"] .wcard.c2 { background: #2F6F98; }
[data-theme="ginkgo"] .wcard.c3, [data-theme="ginkgo"] .wcard.c5 { background: var(--gold); color: var(--gold-ink); }
[data-theme="ginkgo"] .wcard.c4 { background: #8EC5E8; color: var(--ink); }
[data-theme="ginkgo"] .podium { border-radius: 0; }
[data-theme="ginkgo"] .podium.p1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="ginkgo"] .side { border-radius: 50% 50% 4vh 4vh / 30% 30% 4vh 4vh; }
[data-theme="ginkgo"] .side.s0 { background: var(--gold); color: var(--gold-ink); }
[data-theme="ginkgo"] .side.s1 { background: #8EC5E8; color: var(--ink); }
[data-theme="ginkgo"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); border-radius: 3vh; }
[data-theme="ginkgo"] .eopts li, [data-theme="ginkgo"] .t-board, [data-theme="ginkgo"] .qrwrap { border-radius: 3vh; }

/* ---------- 24~26: 디자인 검사 경고(한쪽 굵은 띠, 둥근 카드의 굵은 선)를 피한 판 ---------- */
/* ---------- 메이플 ---------- */
[data-theme="maple2"] {
  --bg: #F5F5F3; --surface: #F5F5F3; --sunk: #E8E7E3; --ink: #17140F; --sub: #3D3830; --muted: #6A6358; --line: #17140F;
  --accent: #C8341E; --accent-press: #A92A17; --accent-ink: #F5F5F3; --accent-soft: #F3DCD6;
  --gold: #E2A72E; --gold-ink: #17140F; --hot: #C8341E; --hot-soft: #F3DCD6;
  --stage: #3A0F0B; --stage-2: #52170F; --stage-ink: #F5F5F3; --stage-sub: #D9B9A8;
  --r: 0px; --r-sm: 0px; --f-display: "Pretendard Variable", var(--f);
}
[data-theme="maple2"] .card, [data-theme="maple2"] .mrow, [data-theme="maple2"] .plist li, [data-theme="maple2"] .empty { border: 0; border-top: 2px solid var(--ink); background: transparent; padding-left: 0; padding-right: 0; }
[data-theme="maple2"] button.opt, [data-theme="maple2"] .cell { border: 1px solid var(--ink); background: transparent; }
[data-theme="maple2"] .screen h1 { font-size: 44px; font-weight: 900; letter-spacing: -0.05em; line-height: 1; }
[data-theme="maple2"] .big { font-size: 96px; font-weight: 900; letter-spacing: -0.06em; color: var(--accent); }
[data-theme="maple2"] header.top { background: var(--bg); border-bottom: 2px solid var(--ink); }
[data-theme="maple2"] .brand { font-size: 17px; letter-spacing: -0.02em; }
[data-theme="maple2"] .tabs { background: var(--bg); border-top: 2px solid var(--ink); }
[data-theme="maple2"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="maple2"] .btn { border-radius: 0; }
[data-theme="maple2"] .card.now { background: var(--ink); color: var(--bg); padding: 16px; }
[data-theme="maple2"] .card.score.lead { box-shadow: none; border-top: 1px solid var(--accent); }
[data-theme="maple2"] .mrow.done { background: transparent; border-top-color: var(--accent); }
[data-theme="maple2"] .mrow.done .mt { color: var(--accent); }
[data-theme="maple2"] .prog .bar { height: 3px; border-radius: 0; }
[data-theme="maple2"] .cell.on { background: var(--ink); color: var(--bg); }
[data-theme="maple2"] .cell.line { background: var(--accent); color: var(--bg); border-color: var(--accent); }
[data-theme="maple2"] .tpad { background: var(--accent); }
[data-theme="maple2"] .tpad.run { background: var(--ink); }
[data-theme="maple2"] .tag { background: transparent; color: var(--accent); border: 1px solid var(--accent); border-radius: 0; }
[data-theme="maple2"] .notice { background: var(--accent); border-radius: 0; }
[data-theme="maple2"] .mega { font-size: 15vh; letter-spacing: -0.06em; line-height: 0.95; }
[data-theme="maple2"] .kicker { letter-spacing: 0.04em; }
[data-theme="maple2"] .dark .kicker { color: var(--gold); }
[data-theme="maple2"] .wcard { background: var(--stage); }
[data-theme="maple2"] .wcard.c2, [data-theme="maple2"] .wcard.c5 { background: var(--accent); }
[data-theme="maple2"] .wcard.c3 { background: var(--bg); color: var(--ink); }
[data-theme="maple2"] .wcard.c4 { background: var(--gold); color: var(--ink); }
[data-theme="maple2"] .wb { font-size: 17vh; letter-spacing: -0.06em; }
[data-theme="maple2"] .podium { background: var(--bg); color: var(--ink); }
[data-theme="maple2"] .podium .pk { color: var(--accent); font-size: 8vh; font-weight: 900; }
[data-theme="maple2"] .podium.p1 { background: var(--accent); color: var(--bg); }
[data-theme="maple2"] .podium.p1 .pk { color: var(--gold); }
[data-theme="maple2"] .side { border-radius: 0; }
[data-theme="maple2"] .side.s0 { background: var(--accent); }
[data-theme="maple2"] .side.s1 { background: var(--bg); color: var(--ink); }
[data-theme="maple2"] .rlist li.t1 { background: var(--gold); color: var(--ink); border-radius: 0; }
[data-theme="maple2"] .qrwrap, [data-theme="maple2"] .eopts li, [data-theme="maple2"] .t-board, [data-theme="maple2"] .qlist li { border-radius: 0; }
/* ---------- 스위스 포스터 ---------- */
[data-theme="swiss2"] {
  --bg: #F7F7F5; --surface: #F7F7F5; --sunk: #EAEAE7; --ink: #0E0E0E; --sub: #2B2B2B; --muted: #5A5A5A; --line: #0E0E0E;
  --accent: #E10600; --accent-press: #B80500; --accent-ink: #F7F7F5; --accent-soft: #FBE3E2;
  --gold: #E10600; --gold-ink: #F7F7F5; --hot: #E10600; --hot-soft: #FBE3E2;
  --stage: #0E0E0E; --stage-2: #1C1C1C; --stage-ink: #F7F7F5; --stage-sub: #B5B5B5;
  --r: 0px; --r-sm: 0px;
}
[data-theme="swiss2"] .screen h1 { font-size: 48px; font-weight: 900; letter-spacing: -0.06em; line-height: 0.95; }
[data-theme="swiss2"] header.top { border-bottom: 1px solid var(--ink); }
[data-theme="swiss2"] .dot { border-radius: 0; background: var(--accent) !important; }
[data-theme="swiss2"] .tabs { border-top: 1px solid var(--ink); }
[data-theme="swiss2"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="swiss2"] .card, [data-theme="swiss2"] .mrow, [data-theme="swiss2"] .empty { border: 0; border-top: 1px solid var(--ink); padding-left: 0; padding-right: 0; background: transparent; }
[data-theme="swiss2"] button.opt, [data-theme="swiss2"] .cell { border: 2px solid var(--ink); background: transparent; }
[data-theme="swiss2"] .big { font-size: 110px; letter-spacing: -0.07em; }
[data-theme="swiss2"] .card.score.lead { box-shadow: none; border-top-color: var(--accent); }
[data-theme="swiss2"] .card.now { background: var(--accent); color: var(--accent-ink); padding: 16px; border: 0; }
[data-theme="swiss2"] .card.now .label, [data-theme="swiss2"] .card.now .chase { color: var(--accent-ink); }
[data-theme="swiss2"] .mrow.done .mt { color: var(--accent); }
[data-theme="swiss2"] .mp { color: var(--ink); font-weight: 900; }
[data-theme="swiss2"] .cell.on { background: var(--ink); color: var(--bg); }
[data-theme="swiss2"] .cell.line { background: var(--accent); color: var(--bg); border-color: var(--accent); }
[data-theme="swiss2"] .tpad { background: var(--ink); }
[data-theme="swiss2"] .tpad.run { background: var(--accent); }
[data-theme="swiss2"] .btn { border-radius: 0; }
[data-theme="swiss2"] .tag { background: var(--ink); color: var(--bg); border-radius: 0; }
[data-theme="swiss2"] .notice { background: var(--ink); border-radius: 0; }
[data-theme="swiss2"] .mega { font-size: 16vh; letter-spacing: -0.07em; line-height: 0.92; }
[data-theme="swiss2"] .wcard { background: var(--bg); color: var(--ink); }
[data-theme="swiss2"] .wcard.c2, [data-theme="swiss2"] .wcard.c5 { background: var(--accent); color: var(--bg); }
[data-theme="swiss2"] .wcard.c4 { background: var(--ink); color: var(--bg); }
[data-theme="swiss2"] .wb { font-size: 18vh; letter-spacing: -0.07em; line-height: 0.95; }
[data-theme="swiss2"] .podium { background: var(--bg); color: var(--ink); align-items: flex-start; text-align: left; padding: 0 8vw; }
[data-theme="swiss2"] .podium .pk { font-size: 10vh; font-weight: 900; color: var(--accent); }
[data-theme="swiss2"] .podium.p1 { background: var(--accent); color: var(--bg); }
[data-theme="swiss2"] .podium.p1 .pk { color: var(--bg); }
[data-theme="swiss2"] .side { border-radius: 0; }
[data-theme="swiss2"] .side.s0 { background: var(--accent); }
[data-theme="swiss2"] .side.s1 { background: var(--bg); color: var(--ink); }
[data-theme="swiss2"] .rlist li.t1 { background: var(--accent); color: var(--bg); border-radius: 0; }
[data-theme="swiss2"] .qrwrap, [data-theme="swiss2"] .eopts li, [data-theme="swiss2"] .t-board, [data-theme="swiss2"] .qlist li { border-radius: 0; }
/* ---------- 노선도 ---------- */
[data-theme="subway2"] {
  --bg: #F5F6F7; --surface: #FDFEFD; --sunk: #E8EAED; --ink: #1A1D21; --sub: #3C4249; --muted: #5A616B; --line: #D4D8DD;
  --accent: #00A84D; --accent-press: #008A3F; --accent-ink: #FDFEFD; --accent-soft: #DDF3E6;
  --gold: #F5A200; --gold-ink: #1A1D21; --hot: #E6186C; --hot-soft: #FCDCE8;
  --stage: #FDFEFD; --stage-2: #F1F3F5; --stage-ink: #1A1D21; --stage-sub: #5A616B;
  --r: 12px; --r-sm: 8px;
}
[data-theme="subway2"] header.top { background: var(--surface); border-bottom: 1px solid var(--accent); }
[data-theme="subway2"] .tabs button[aria-current="page"] { color: var(--accent); }
[data-theme="subway2"] .screen h1 { font-weight: 900; }
[data-theme="subway2"] .card { border: 2px solid var(--line); }
[data-theme="subway2"] .card.score .big { color: var(--accent); }
[data-theme="subway2"] .card.score.lead { border-color: var(--gold); box-shadow: none; }
[data-theme="subway2"] .card.now { background: #0052A4; color: var(--accent-ink); border-color: #0052A4; }
[data-theme="subway2"] .card.now .label, [data-theme="subway2"] .card.now .chase { color: #CFE0F5; }
[data-theme="subway2"] .missions { border-left: 1px solid var(--accent); margin-left: 14px; gap: 6px; }
[data-theme="subway2"] .mrow { position: relative; border: 0; background: transparent; padding-left: 26px; border-radius: 0; }
[data-theme="subway2"] .mrow::before { content: ""; position: absolute; left: -15px; top: 50%; width: 18px; height: 18px; margin-top: -9px; border-radius: 50%; border: 5px solid var(--accent); background: var(--surface); }
[data-theme="subway2"] .mrow.done { background: transparent; }
[data-theme="subway2"] .mrow.done::before { background: var(--accent); }
[data-theme="subway2"] .timeline { border-left: 1px solid var(--gold); margin-left: 10px; border-top: 0; }
[data-theme="subway2"] .timeline li { position: relative; padding-left: 20px; border-bottom: 0; }
[data-theme="subway2"] .timeline li::before { content: ""; position: absolute; left: -13px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 50%; border: 4px solid var(--gold); background: var(--surface); }
[data-theme="subway2"] .timeline li.past::before { background: var(--gold); }
[data-theme="subway2"] .cell { border-radius: 50%; border: 4px solid var(--line); }
[data-theme="subway2"] .cell.on { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
[data-theme="subway2"] .cell.line { background: var(--gold); color: var(--gold-ink); border-color: var(--gold); }
[data-theme="subway2"] .tpad { background: var(--accent); color: var(--accent-ink); border-radius: 24px; }
[data-theme="subway2"] .tpad.run { background: #0052A4; }
[data-theme="subway2"] .notice { background: var(--ink); color: var(--accent-ink); }
[data-theme="subway2"] .tag { background: var(--accent); color: var(--accent-ink); }
[data-theme="subway2"] .kicker, [data-theme="subway2"] .dark .kicker { color: var(--accent); }
[data-theme="subway2"] .pin, [data-theme="subway2"] .count, [data-theme="subway2"] .t-cnt, [data-theme="subway2"] .p-live b { color: var(--accent); }
[data-theme="subway2"] .pstate.on { color: var(--hot); }
[data-theme="subway2"] .wcard { color: var(--accent-ink); border-bottom: 2.4vh solid var(--ink); }
[data-theme="subway2"] .wcard.c1, [data-theme="subway2"] .wcard.c6 { background: var(--accent); }
[data-theme="subway2"] .wcard.c2 { background: #0052A4; }
[data-theme="subway2"] .wcard.c3 { background: var(--gold); color: var(--gold-ink); }
[data-theme="subway2"] .wcard.c4 { background: var(--hot); }
[data-theme="subway2"] .wcard.c5 { background: var(--ink); border-bottom-color: var(--accent); }
[data-theme="subway2"] .podium { color: #FDFEFD; }
[data-theme="subway2"] .podium.p1 { color: var(--gold-ink); }
[data-theme="subway2"] .side.s0 { background: var(--accent); color: var(--accent-ink); }
[data-theme="subway2"] .side.s1 { background: #0052A4; color: var(--accent-ink); }
[data-theme="subway2"] .rlist { border-left: 1.2vh solid var(--accent); margin-left: 3vw; }
[data-theme="subway2"] .rlist li { position: relative; padding-left: 2vw; border-bottom: 0; }
[data-theme="subway2"] .rlist li::before { content: ""; position: absolute; left: -2.3vh; top: 50%; width: 2.2vh; height: 2.2vh; margin-top: -1.1vh; border-radius: 50%; border: 0.8vh solid var(--accent); background: var(--surface); }
[data-theme="subway2"] .rlist li.t1 { background: var(--gold); color: var(--gold-ink); }
[data-theme="subway2"] .rlist li.t1::before { background: var(--gold); }

/* ---------- 24 메이플 2: 굵은 띠 없이 면 색과 큰 숫자로 ---------- */
[data-theme="maple2"] .card.score.lead { background: var(--accent); color: var(--accent-ink); border: 0; padding: 18px; }
[data-theme="maple2"] .card.score.lead .big, [data-theme="maple2"] .card.score.lead .label, [data-theme="maple2"] .card.score.lead .chase, [data-theme="maple2"] .card.score.lead .live, [data-theme="maple2"] .card.score.lead .pts { color: var(--accent-ink); }
[data-theme="maple2"] .card, [data-theme="maple2"] .mrow { border-top: 1px solid var(--ink); }
[data-theme="maple2"] .mrow.done { background: var(--accent-soft); border-top-color: var(--accent); padding-left: 12px; }

/* ---------- 25 스위스 2: 굵은 선 대신 넓은 여백과 반전 머리줄 ---------- */
[data-theme="swiss2"] header.top { background: var(--ink); color: var(--bg); border: 0; }
[data-theme="swiss2"] header.top .who { color: #B5B5B5; }
[data-theme="swiss2"] .tabs { background: var(--ink); border: 0; }
[data-theme="swiss2"] .tabs button { color: #B5B5B5; }
[data-theme="swiss2"] .tabs button[aria-current="page"] { color: var(--bg); background: var(--accent); }
[data-theme="swiss2"] .card, [data-theme="swiss2"] .mrow, [data-theme="swiss2"] .empty { border: 0; background: var(--sunk); padding: 16px; }
[data-theme="swiss2"] .screen { gap: 28px; }

/* ---------- 26 노선도 2: 선 대신 역 점과 노선 색 칩 ---------- */
[data-theme="subway2"] .missions { border-left: 0; margin-left: 0; gap: 8px; }
[data-theme="subway2"] .timeline { border-left: 0; margin-left: 0; border-top: 0; }
[data-theme="subway2"] .mrow { position: relative; padding-left: 44px; }
[data-theme="subway2"] .mrow::before { content: ""; position: absolute; left: 14px; top: 50%; width: 18px; height: 18px; margin-top: -9px; border-radius: 50%; background: var(--surface); box-shadow: 0 0 0 4px var(--accent); }
[data-theme="subway2"] .mrow.done::before { background: var(--accent); }
[data-theme="subway2"] .timeline li { position: relative; padding-left: 28px; }
[data-theme="subway2"] .timeline li::before { content: ""; position: absolute; left: 4px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: var(--surface); box-shadow: 0 0 0 3px var(--gold); }
[data-theme="subway2"] .timeline li.now::before { background: var(--gold); }
[data-theme="subway2"] header.top { border-bottom: 1px solid var(--line); }
