/* 叮叮点歌设计系统 — generated from tokens.json */
:root, [data-theme="light"] {
  --bg: #edeff0;
  --panel: #e1e4e6;
  --ink: #16181a;
  --ink-2: #4a5055;
  --line: #c2c8cc;
  --line-strong: #728089;
  --red: #d60017;
  --red-ink: #b70014;
  --on-red: #ffffff;
  --amber: #d98e00;
  --on-amber: #16181a;
  --glass: #1c2124;
  --glass-2: #283035;
  --glass-edge: #5e707c;
  --glass-ink: #e9ecee;
  --glass-dim: #9aa4aa;
  --glass-red-ink: #ff8c99;
  --glass-red: #ff5a6c;
  --glass-red-line: #ff3347;
  --glass-text-2: #c9d0d4;
  --glass-rule: #2a3236;
  --tape: #f1e7c9;
  --tape-ink: #2a2721;
  --key-white: #f4f5f6;
  --key-black: #2e3438;
  --key-white-off: #a9b2b7;
  --key-black-off: #586066;
  --key-white-ink: #16181a;
  --key-black-ink: #e9ecee;
  --lane-next: #646f77;
  --drum-body: #2b3338;
  --pad-face: #3a4247;
  --pad-edge: #262d31;
  --material-console: #14110f;
  --material-felt: #a3121c;
  --material-lacquer: #b5121f;
  --material-ivory: #f7f5ef;
  --material-ivory-plate: #f6efe1;
  --material-ebony: #0d0e0f;
  --material-brass: #c9a258;
  --material-chrome: #c9ced2;
  --material-silver: #d6dadd;
  --material-aluminium: #d4d8db;
  --material-rosewood: #7a3a20;
  --material-maple: #c26a24;
  --material-bamboo: #e4d08a;
  --material-boxwood: #e2b778;
  --material-copper: #c07a3e;
  --material-fa-string: #5a70b0;
  --material-drumhead: #f1eee6;
  --material-glow: #ffb52e;
  --material-glow-70: rgba(255,181,46,.7);
  --material-glow-50: rgba(255,181,46,.5);
  --material-console-1: #16181a;
  --material-console-2: #2a2522;
  --material-console-3: #110f0e;
  --material-console-4: #080707;
  --material-sheen-9: rgba(255,255,255,.09);
  --material-keys-1: #c81a26;
  --material-keys-2: #6c0a12;
  --material-keys-3: #4a4438;
  --material-keys-4: #d9d5cb;
  --material-keys-5: #faf8f3;
  --material-keys-6: #ebe7dd;
  --material-keys-7: #f6f4ee;
  --material-keys-8: #dcd6c8;
  --material-sheen-90: rgba(255,255,255,.9);
  --material-shade-7: rgba(0,0,0,.07);
  --material-shade-55: rgba(0,0,0,.55);
  --material-keys-9: #c3c8cc;
  --material-keys-10: #2a2d30;
  --material-keys-11: #111213;
  --material-keys-12: #2b2f33;
  --material-keys-13: #121314;
  --material-keys-14: #020202;
  --material-sheen-10: rgba(255,255,255,.10);
  --material-shade-60: rgba(0,0,0,.6);
  --material-sheen-16: rgba(255,255,255,.16);
  --material-sheen-0: rgba(255,255,255,0);
  --material-keys-15: #3a2a06;
  --material-keys-16: #c9c4b8;
  --material-keys-17: #f2e6cc;
  --material-keys-18: #f6dca6;
  --material-keys-19: #e9c47a;
  --material-keys-20: #6b4a12;
  --material-shade-35: rgba(0,0,0,.35);
  --material-glow-75: rgba(255,181,46,.75);
  --material-keys-21: #1d1408;
  --material-keys-22: #3a2708;
  --material-glow-55: rgba(255,181,46,.55);
  --material-keys-23: #5a5348;
  --material-keys-24: #c9c4b9;
  --material-keys-25: #d9d5cc;
  --material-keys-26: #d2cdc3;
  --material-keys-27: #3a3d40;
  --material-keys-28: #26292c;
  --material-keys-29: #2e3134;
  --material-bars-1: #8f959a;
  --material-bars-2: #d9dde0;
  --material-bars-3: #f6f7f8;
  --material-bars-4: #eef0f1;
  --material-bars-5: #a5abb0;
  --material-bars-6: #80868b;
  --material-bars-7: #3d4448;
  --material-sheen-50: rgba(255,255,255,.5);
  --material-shade-20: rgba(0,0,0,.2);
  --material-sheen-75: rgba(255,255,255,.75);
  --material-bars-8: #fff;
  --material-shade-66: rgba(0,0,0,.66);
  --material-bars-9: #1f0d05;
  --material-shade-45: rgba(0,0,0,.45);
  --material-shade-8: rgba(0,0,0,.08);
  --material-sheen-2: rgba(255,255,255,.02);
  --material-shade-5: rgba(0,0,0,.05);
  --material-bars-10: #6b4428;
  --material-bars-11: #5d3b22;
  --material-bars-12: #3f2715;
  --material-sheen-12: rgba(255,255,255,.12);
  --material-shade-18: rgba(0,0,0,.18);
  --material-bars-13: #b81823;
  --material-bars-14: #6e0b13;
  --material-bars-15: #f2f3f4;
  --material-bars-16: #6e757a;
  --material-bars-17: #3b4044;
  --material-sheen-40: rgba(255,255,255,.4);
  --material-sheen-7: rgba(255,255,255,.07);
  --material-shade-3p5: rgba(0,0,0,.035);
  --material-sheen-60: rgba(255,255,255,.6);
  --material-shade-10: rgba(0,0,0,.10);
  --material-sheen-3: rgba(255,255,255,.03);
  --material-bars-18: #4d2312;
  --material-bars-19: #8a4527;
  --material-bars-20: #a6573a;
  --material-bars-21: #fbe9d6;
  --material-bars-22: rgba(255,214,150,.07);
  --material-bars-23: #5e230a;
  --material-bars-24: #a24a16;
  --material-bars-25: #d27a2c;
  --material-bars-26: #b5581c;
  --material-bars-27: #6e2a0c;
  --material-bars-28: #1e1714;
  --material-bars-29: #0f0b09;
  --material-sheen-5: rgba(255,255,255,.05);
  --material-bars-30: #6e4e16;
  --material-bars-31: #b88a32;
  --material-bars-32: #f0d27a;
  --material-bars-33: #fff3c4;
  --material-bars-34: #d9ad4e;
  --material-bars-35: #a07624;
  --material-bars-36: #3a2806;
  --material-bars-37: #fffaf0;
  --material-bars-38: #e6dac2;
  --material-bars-39: #b4a382;
  --material-bars-40: #7a5818;
  --material-bars-41: #efe4cc;
  --material-bars-42: #c9b996;
  --material-bars-43: #c9a04a;
  --material-bars-44: #5e441a;
  --material-bars-45: rgba(255,214,150,.06);
  --material-bars-46: #4a1a07;
  --material-bars-47: #85380f;
  --material-bars-48: #b0601f;
  --material-bars-49: #96461a;
  --material-bars-50: #561f09;
  --material-bars-51: #a35420;
  --material-bars-52: rgba(255,214,150,.05);
  --material-bars-53: #361205;
  --material-bars-54: #66290b;
  --material-bars-55: #8a4818;
  --material-bars-56: #723412;
  --material-bars-57: #3e1606;
  --material-bars-58: #7f3f15;
  --material-bars-59: #6f7579;
  --material-bars-60: #b9bec2;
  --material-bars-61: #eef0f2;
  --material-bars-62: #c9cdd0;
  --material-bars-63: #9aa0a4;
  --material-bars-64: #353c40;
  --material-bars-65: rgba(110,80,20,.55);
  --material-bars-66: rgba(255,250,220,.4);
  --material-bars-67: #93792f;
  --material-bars-68: #cdb366;
  --material-bars-69: #f2e3a8;
  --material-bars-70: #a8913f;
  --material-bars-71: #3c2f0c;
  --material-bars-72: rgba(120,70,20,.07);
  --material-bars-73: #8e5c26;
  --material-bars-74: #c99350;
  --material-bars-75: #f0cf98;
  --material-bars-76: #b07a3a;
  --material-bars-77: #3b2610;
  --material-bars-78: #e8e4da;
  --material-bars-79: #f3f0e8;
  --material-bars-80: #e2ddd1;
  --material-harp-1: #3a2414;
  --material-harp-2: #22150b;
  --material-harp-3: #2e1d10;
  --material-shade-50: rgba(0,0,0,.5);
  --material-harp-4: #f0e6d2;
  --material-harp-5: #a8916a;
  --material-harp-6: #f3e6c8;
  --material-harp-7: rgba(50,24,6,.45);
  --material-harp-8: #6e3a14;
  --material-harp-9: #e09a5a;
  --material-harp-10: #2a3c7a;
  --material-harp-11: #8da2e0;
  --material-harp-12: #6f86c8;
  --material-harp-13: #f6e6b0;
  --material-harp-14: #b8902e;
  --material-harp-15: #6e5216;
  --material-guitar-1: #e8d3a2;
  --material-guitar-2: #2b2420;
  --material-guitar-3: #1a1512;
  --material-guitar-4: #221c19;
  --material-guitar-5: rgba(201,162,88,.4);
  --material-sheen-6: rgba(255,255,255,.06);
  --material-guitar-6: #2a1b08;
  --material-guitar-7: #ecd08f;
  --material-guitar-8: #9c7a37;
  --material-sheen-55: rgba(255,255,255,.55);
  --material-guitar-9: rgba(201,162,88,.7);
  --material-guitar-10: #cfc8b8;
  --material-guitar-11: #8f897c;
  --material-sheen-1p5: rgba(255,255,255,.015);
  --material-shade-6: rgba(0,0,0,.06);
  --material-guitar-12: #3d2517;
  --material-guitar-13: #2c1a11;
  --material-guitar-14: #22140c;
  --material-guitar-15: #050302;
  --material-guitar-16: #e8dcc0;
  --material-guitar-17: #2a1a10;
  --material-guitar-18: #fbfcfc;
  --material-guitar-19: #9ea4a9;
  --material-guitar-20: #5e6367;
  --material-guitar-21: rgba(60,36,10,.28);
  --material-guitar-22: #f5dfae;
  --material-guitar-23: #c99c57;
  --material-guitar-24: #7d5a26;
  --material-guitar-25: rgba(255,214,140,.95);
  --material-guitar-26: #f2e4c2;
  --material-kit-1: #b9bfc4;
  --material-kit-2: #f0e9dc;
  --material-kit-3: #c3b393;
  --material-kit-4: rgba(163,18,28,.28);
  --material-kit-5: #6e6458;
  --material-glow-90: rgba(255,181,46,.9);
  --material-kit-6: #3a1a0e;
  --material-kit-7: #fbf9f4;
  --material-kit-8: #e7e2d6;
  --material-kit-9: #f6df9e;
  --material-kit-10: #8f6b2b;
  --material-conga-1: #3b2412;
  --material-conga-2: #f6ead2;
  --material-conga-3: #e6cfa4;
  --material-conga-4: #c79d63;
  --material-conga-5: #6e4524;
  --material-conga-6: #4a2c16;
  --material-conga-7: #6e7479;
  --shadow-radio: 0 1px 0 rgba(255,255,255,.4) inset, 0 18px 40px -26px rgba(0,0,0,.45);
  --shadow-knob: inset 0 -4px 0 rgba(0,0,0,.25);
  --shadow-bar: inset 0 -5px 0 rgba(0,0,0,.35);
  --key-black-ring: 0 0 0 1px #000;
}
[data-theme="dark"] {
  --bg: #0f1112;
  --panel: #181b1d;
  --ink: #edeff0;
  --ink-2: #a6adb2;
  --line: #2d3235;
  --line-strong: #606b71;
  --red: #e0182f;
  --red-ink: #ff7484;
  --on-red: #ffffff;
  --amber: #ffb52e;
  --glass: #070909;
  --glass-2: #15191b;
  --glass-edge: #53636b;
  --glass-ink: #f0f2f3;
  --glass-dim: #8a949a;
  --tape: #3b3729;
  --tape-ink: #f1e7c9;
}
:root {
  --space-2: 2px;
  --space-3: 3px;
  --space-4: 4px;
  --space-5: 5px;
  --space-6: 6px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-14: 14px;
  --space-16: 16px;
  --space-18: 18px;
  --space-22: 22px;
  --space-24: 24px;
  --space-26: 26px;
  --space-28: 28px;
  --space-44: 44px;
  --space-48: 48px;
  --space-52: 52px;
  --radius-2: 2px;
  --radius-3: 3px;
  --radius-6: 6px;
  --radius-8: 8px;
  --radius-10: 10px;
  --radius-12: 12px;
  --radius-14: 14px;
  --radius-18: 18px;
  --radius-22: 22px;
  --radius-pill: 999px;
  --wrap-max: 1180px;
  --header-height: 66px;
  --tap-min: 44px;
  --bp-wide: 1080px;
  --bp-stack: 900px;
  --bp-tabs: 760px;
  --bp-phone: 640px;
  --font-body: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;
  --font-body-en: "Source Sans 3", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, "Noto Sans TC", sans-serif;
  --font-body-ja: "Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", Meiryo, system-ui, sans-serif;
  --font-body-sc: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-display: "Big Shoulders Display", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  --font-mono: "Space Mono", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", monospace;
}
.hero-title { font-family: var(--font-body); font-size: 74px; line-height: 1.12; font-weight: 700; letter-spacing: -0.02em; }
.page-title { font-family: var(--font-body); font-size: 52px; line-height: 1.1; font-weight: 700; letter-spacing: -0.01em; }
.page-title-phone { font-family: var(--font-body); font-size: 34px; line-height: 1.15; font-weight: 700; letter-spacing: -0.01em; }
.section-title { font-family: var(--font-body); font-size: 40px; line-height: 1.2; font-weight: 700; letter-spacing: -0.01em; }
.program-title { font-family: var(--font-body); font-size: 26px; line-height: 1.25; font-weight: 700; }
.item-title { font-family: var(--font-body); font-size: 22px; line-height: 1.3; font-weight: 700; }
.lead-text { font-family: var(--font-body); font-size: 18px; line-height: 1.7; font-weight: 400; }
.body { font-family: var(--font-body); font-size: 17px; line-height: 1.7; font-weight: 400; }
.body-small { font-family: var(--font-body); font-size: 16px; line-height: 1.7; font-weight: 400; }
.ui-label { font-family: var(--font-body); font-size: 15px; line-height: 1.25; font-weight: 700; }
.fine-print { font-family: var(--font-body); font-size: 14px; line-height: 1.6; font-weight: 400; }
.caption { font-family: var(--font-body); font-size: 13px; line-height: 1.5; font-weight: 400; }
.button { font-family: var(--font-body); font-size: 17px; line-height: 1; font-weight: 700; }
.tool-label { font-family: var(--font-body); font-size: 14px; line-height: 1; font-weight: 700; }
.chip-label { font-family: var(--font-body); font-size: 13px; line-height: 1; font-weight: 700; }
.freq-number { font-family: var(--font-display); font-size: 30px; line-height: 1; font-weight: 800; letter-spacing: 0.02em; }
.stat { font-family: var(--font-display); font-size: 40px; line-height: 1; font-weight: 800; }
.stat-small { font-family: var(--font-display); font-size: 32px; line-height: 1; font-weight: 800; }
.chord-name { font-family: var(--font-display); font-size: 26px; line-height: 1; font-weight: 800; }
.kicker { font-family: var(--font-display); font-size: 15px; line-height: 1; font-weight: 800; letter-spacing: 0.16em; }
.on-air { font-family: var(--font-display); font-size: 14px; line-height: 1; font-weight: 800; letter-spacing: 0.14em; }
.freq-label { font-family: var(--font-mono); font-size: 12px; line-height: 1; font-weight: 500; }
.mono-label { font-family: var(--font-mono); font-size: 12px; line-height: 1; font-weight: 500; letter-spacing: 0.1em; }
.mono-unit { font-family: var(--font-mono); font-size: 14px; line-height: 1; font-weight: 500; }
.key-hint { font-family: var(--font-mono); font-size: 11px; line-height: 1; font-weight: 400; }
