:root { color-scheme: light; --bg: #f5f8fb; --bg-secondary: #edf4f7; --panel: rgba(255, 255, 255, 0.9); --panel-solid: #fff; --card-bg: #fff; --ink: #10233c; --ink-secondary: #334b63; --muted: #64778b; --subtle: #91a1b1; --line: #dbe6ec; --line-strong: #bdd0db; --trans-bg: rgba(15, 69, 91, 0.055); --trans-border: rgba(15, 69, 91, 0.12); --accent: #0051d6; --accent-blue: #0051d6; --accent-orange: #007f73; --accent-orange-bg: rgba(0, 127, 115, 0.08); --accent-orange-border: rgba(0, 127, 115, 0.28); --radius: 8px; --radius-sm: 6px; --radius-lg: 8px; --shadow-sm: 0 1px 3px rgba(16, 35, 60, 0.06); --shadow-md: 0 8px 24px rgba(16, 35, 60, 0.08); --font-dongguan-light: "STDongGuanTi Light", "Noto Serif SC", "Songti SC", "SimSun", serif; --font-dongguan-regular: "STDongGuanTi", "Noto Serif SC", "Songti SC", "SimSun", serif; --font-dongguan-bold: "STDongGuanTi Bld", "STDongGuanTi", "Noto Serif SC", "Songti SC", "SimSun", serif; } html[data-theme="dark"] { color-scheme: dark; --bg: #091119; --bg-secondary: #0d1822; --panel: rgba(15, 27, 38, 0.94); --panel-solid: #101d28; --card-bg: #12212d; --ink: #f3f8fb; --ink-secondary: #cad7df; --muted: #98a9b7; --subtle: #6f8393; --line: rgba(220, 237, 245, 0.12); --line-strong: rgba(220, 237, 245, 0.2); --trans-bg: rgba(255, 255, 255, 0.05); --trans-border: rgba(255, 255, 255, 0.1); --accent-blue: #75a7ff; --accent-orange: #45d1b5; --accent-orange-bg: rgba(69, 209, 181, 0.12); --accent-orange-border: rgba(69, 209, 181, 0.32); } *, *::before, *::after { box-sizing: border-box; } html { min-width: 320px; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; } body { margin: 0; min-height: 100vh; background: linear-gradient(135deg, color-mix(in srgb, var(--accent-blue) 6%, var(--bg)), color-mix(in srgb, #12a889 7%, var(--bg))); color: var(--ink); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans SC", sans-serif; font-size: 16px; line-height: 1.6; } button, input, select { font: inherit; } button, a { -webkit-tap-highlight-color: transparent; } a { color: inherit; } .skip-link { position: fixed; top: 8px; left: 8px; z-index: 100; padding: 10px 14px; background: var(--ink); color: var(--panel-solid); transform: translateY(-150%); } .skip-link:focus { transform: none; } .site-header { position: sticky; top: 0; z-index: 30; display: flex; align-items: center; justify-content: space-between; min-height: 76px; padding: 10px clamp(16px, 4vw, 48px); border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--bg) 88%, transparent); backdrop-filter: blur(18px); } .brand { display: flex; align-items: center; gap: 12px; color: var(--ink); text-decoration: none; } .brand img { width: 52px; height: 52px; object-fit: contain; } .brand span { display: grid; } .brand strong { font-family: inherit; font-size: 22px; font-weight: 700; line-height: 1.2; } .brand small { color: var(--muted); font-size: 13px; } .site-tools { display: flex; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 8px; background: color-mix(in srgb, var(--panel-solid) 90%, transparent); box-shadow: var(--shadow-sm); } .icon-button { position: relative; display: grid; width: 44px; height: 44px; padding: 0; place-items: center; border: 0; border-radius: 5px; background: transparent; color: var(--ink-secondary); cursor: pointer; transition: color 160ms ease, background 160ms ease, transform 160ms ease; } .icon-button:hover { background: var(--trans-bg); color: var(--accent-blue); } .icon-button:active { transform: scale(0.94); } .icon-button:focus-visible { outline: 2px solid var(--accent-blue); outline-offset: 2px; } .tool-icon { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; } .theme-icon-sun { display: none; } html[data-theme="dark"] .theme-icon-moon { display: none; } html[data-theme="dark"] .theme-icon-sun { display: block; } .site-shell { width: min(1760px, calc(100% - 48px)); margin: 0 auto; padding: 28px 0 64px; } .page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 36px; margin-bottom: 16px; padding: 12px 0 16px; border-bottom: 1px solid var(--line); } .page-heading h1 { margin: 0; font-family: inherit; font-size: clamp(30px, 3vw, 40px); font-weight: 700; line-height: 1.15; letter-spacing: 0; } .page-heading > p { max-width: 760px; margin: 0; color: var(--ink-secondary); font-size: 17px; } .toast { position: fixed; right: 18px; bottom: 18px; z-index: 80; max-width: min(360px, calc(100vw - 36px)); padding: 12px 16px; border: 1px solid var(--line); border-radius: 6px; background: var(--ink); color: var(--panel-solid); opacity: 0; transform: translateY(12px); pointer-events: none; transition: 180ms ease; } .toast.visible { opacity: 1; transform: none; } .intelligence-list-grid { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; width: 100%; } .intelligence-tags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; } .calendar-local-names { margin: 12px 0; padding: 10px 12px; border-left: 3px solid var(--accent-blue); background: var(--trans-bg); } .calendar-local-names p { margin: 3px 0; color: var(--ink-secondary); font-size: 15px; } @media (max-width: 1080px) { .intelligence-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .page-heading { align-items: flex-start; flex-direction: column; gap: 10px; } } @media (max-width: 640px) { .site-header { min-height: 68px; padding: 8px 12px; } .brand img { width: 44px; height: 44px; } .brand strong { font-size: 19px; } .brand small { display: none; } .site-tools { flex: 0 0 auto; } .site-shell { width: calc(100% - 24px); padding-top: 12px; } .page-heading { margin-bottom: 10px; padding: 12px 0; } .page-heading h1 { font-size: 30px; } .page-heading > p { font-size: 16px; } .intelligence-list-grid { grid-template-columns: 1fr; } } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }