:root { color-scheme: light; --bg: #f6f7fb; --panel: rgba(255, 255, 255, .92); --panel-strong: #ffffff; --soft: #eef3f8; --line: rgba(17, 24, 39, .12); --text: #111827; --muted: #5b6472; --accent: #2563eb; --accent-soft: color-mix(in srgb, var(--accent) 12%, transparent); --danger: #c42b1c; --success: #107c10; --warn: #d97706; --gold: #d99b16; --silver: #8b95a3; --bronze: #b7652d; --radius: 8px; font-family: "Segoe UI", "Microsoft YaHei UI", Arial, sans-serif; } html[data-theme="dark"] { color-scheme: dark; --bg: #111315; --panel: rgba(32, 35, 40, .92); --panel-strong: #272a2f; --soft: rgba(255, 255, 255, .07); --line: rgba(255, 255, 255, .14); --text: #f7f7f8; --muted: #a9b0bb; --accent-soft: color-mix(in srgb, var(--accent) 18%, transparent); } *, *::before, *::after { box-sizing: border-box; min-width: 0; } html, body { margin: 0; min-height: 100%; background: var(--bg); color: var(--text); overflow: auto; } body { font-size: 14px; } button { min-height: 34px; border: 1px solid var(--line); border-radius: 7px; background: var(--panel-strong); color: var(--text); padding: 7px 12px; cursor: pointer; transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease; max-width: 100%; white-space: normal; overflow-wrap: anywhere; } button:hover, button:focus-visible { border-color: var(--accent); outline: 2px solid color-mix(in srgb, var(--accent) 24%, transparent); outline-offset: 1px; } button.ghost { background: transparent; } button.compact { min-height: 30px; padding: 5px 9px; color: var(--muted); } h1, h2, h3, p { margin: 0; } .result-shell { min-height: 100vh; padding: clamp(12px, 2vw, 24px); } .result-page { display: grid; gap: 14px; max-width: 100%; overflow: hidden; } .result-hero, .result-card, .side-panel, .raw-panel, .table-wrap, .code-wrap, .summary-item, .related-actions, .kv, .list-item, .file-card, .link-card { border: 1px solid var(--line); border-radius: var(--radius); background: var(--panel); } .result-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 16px; } .identity { display: flex; gap: 12px; align-items: center; min-width: 0; } .mark { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--accent) 36%, transparent); border-radius: 10px; background: var(--accent-soft); color: var(--accent); flex: 0 0 auto; } .title { min-width: 0; } .eyebrow { display: block; color: var(--accent); font-size: .76rem; font-weight: 800; letter-spacing: 0; } .title h1 { margin-top: 2px; font-size: clamp(1.12rem, 1.8vw, 1.72rem); line-height: 1.16; overflow-wrap: anywhere; } .meta, .muted, .detail-row span, .summary-item span, .item-body span, .raw-panel small { color: var(--muted); } .actions, .related-actions, .link-actions, .raw-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; } .related-actions { grid-column: 1 / -1; justify-content: flex-start; padding: 10px; background: color-mix(in srgb, var(--panel) 76%, var(--soft)); } .summary-strip { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; } .summary-item { padding: 10px 12px; background: color-mix(in srgb, var(--panel) 88%, var(--soft)); } .summary-item span { display: block; font-size: .76rem; } .summary-item strong { display: block; margin-top: 3px; overflow-wrap: anywhere; } .result-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .34fr); gap: 14px; align-items: start; } .main-results, .result-side, .side-stack { display: grid; gap: 12px; align-content: start; } .result-card, .side-panel, .raw-panel { padding: 14px; overflow: hidden; } .compact-card { padding: 10px; background: color-mix(in srgb, var(--panel) 82%, var(--soft)); } .card-head, .panel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; } .card-title { display: flex; gap: 8px; align-items: center; min-width: 0; } .card-title h2, .panel-head h2 { font-size: 1rem; font-weight: 700; overflow-wrap: anywhere; } .block-icon { width: 20px; height: 20px; color: var(--accent); flex: 0 0 auto; } .badge { display: inline-flex; align-items: center; justify-content: center; min-height: 22px; padding: 0 7px; border-radius: 7px; border: 1px solid color-mix(in srgb, var(--accent) 30%, transparent); color: var(--accent); background: var(--accent-soft); font-size: .74rem; font-weight: 800; max-width: 100%; white-space: normal; overflow-wrap: anywhere; } .kv-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 8px; } .kv { padding: 10px; background: var(--panel-strong); } .kv span, .kv strong { display: block; overflow-wrap: anywhere; } .kv span { color: var(--muted); font-size: .76rem; } .metric-grid .primary-kv { grid-column: 1 / -1; border-color: color-mix(in srgb, var(--accent) 42%, var(--line)); background: color-mix(in srgb, var(--panel-strong) 84%, var(--accent-soft)); } .metric-grid .primary-kv strong { color: var(--accent); font-size: clamp(1.55rem, 3vw, 2.4rem); line-height: 1.08; } .table-wrap { overflow: auto; max-width: 100%; max-height: min(60vh, 620px); scrollbar-gutter: stable; } table { width: 100%; min-width: 560px; border-collapse: collapse; } td, th { padding: 9px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; min-width: 120px; max-width: 560px; overflow-wrap: anywhere; word-break: break-word; } th { color: var(--accent); background: var(--accent-soft); font-weight: 800; } .chart-table { display: grid; gap: 10px; } .mini-chart { height: 150px; border: 1px solid var(--line); border-radius: 7px; background: color-mix(in srgb, var(--panel-strong) 86%, var(--accent-soft)); overflow: hidden; } .mini-chart svg { width: 100%; height: 100%; } .mini-chart polyline { fill: none; stroke: var(--accent); stroke-width: 3; vector-effect: non-scaling-stroke; } .list { display: grid; gap: 8px; } .rankedlist, .newslist, .cardlist { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); } .list-item { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 10px; align-items: start; padding: 10px; max-width: 100%; background: var(--panel-strong); } .ranked-item { min-height: 84px; border-color: color-mix(in srgb, var(--accent) 22%, var(--line)); } .list-item:has(.link-actions) { grid-template-columns: 42px minmax(0, 1fr) auto; } .list-item.clickable { cursor: pointer; } .list-item.clickable:hover, .list-item.clickable:focus-visible { border-color: color-mix(in srgb, var(--accent) 56%, var(--line)); background: color-mix(in srgb, var(--panel-strong) 84%, var(--accent-soft)); outline: 2px solid color-mix(in srgb, var(--accent) 20%, transparent); outline-offset: 1px; } .rank-badge { width: 36px; height: 36px; position: relative; display: inline-grid; place-items: center; border-radius: 8px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--accent) 38%, transparent); color: var(--accent); background: var(--accent-soft); font-weight: 900; font-size: .88rem; } .rank-core { position: relative; z-index: 1; overflow: hidden; text-overflow: ellipsis; max-width: 100%; } .rank-1 { color: #4a3300; border-color: color-mix(in srgb, var(--gold) 72%, #fff); background: linear-gradient(145deg, #fff2b8, #e1a21c 58%, #9f6611); } .rank-2 { color: #26303b; border-color: color-mix(in srgb, var(--silver) 72%, #fff); background: linear-gradient(145deg, #f9fbff, #b8c0cc 58%, #687386); } .rank-3 { color: #3e1f0d; border-color: color-mix(in srgb, var(--bronze) 72%, #fff); background: linear-gradient(145deg, #ffe0c2, #c87536 58%, #7e3c1c); } .item-body { min-width: 0; max-width: 100%; } .item-body strong, .item-body span { display: block; overflow-wrap: anywhere; word-break: break-word; } .item-body strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .item-subtitle { margin-top: 4px; white-space: pre-line; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; } .status-error { border-color: color-mix(in srgb, var(--danger) 45%, var(--line)); } .status-ok { border-color: color-mix(in srgb, var(--success) 45%, var(--line)); } .file-card, .link-card { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 10px; align-items: start; padding: 10px; background: var(--panel-strong); } .code-wrap { max-height: min(64vh, 640px); overflow: auto; background: var(--panel-strong); max-width: 100%; scrollbar-gutter: stable; } pre { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; padding: 12px; font-family: "Cascadia Mono", Consolas, monospace; font-size: .84rem; line-height: 1.55; } .limit-note { padding: 8px 12px 10px; font-size: .78rem; } .media-frame { display: grid; place-items: center; min-height: 260px; border: 1px solid var(--line); border-radius: 7px; background: linear-gradient(45deg, color-mix(in srgb, var(--soft) 72%, transparent) 25%, transparent 25%), linear-gradient(-45deg, color-mix(in srgb, var(--soft) 72%, transparent) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, color-mix(in srgb, var(--soft) 72%, transparent) 75%), linear-gradient(-45deg, transparent 75%, color-mix(in srgb, var(--soft) 72%, transparent) 75%); background-size: 24px 24px; background-position: 0 0, 0 12px, 12px -12px, -12px 0; overflow: hidden; } img, video { display: block; max-width: 100%; max-height: 440px; margin: auto; border-radius: 7px; } .media-frame img { width: min(420px, 88%); height: auto; object-fit: contain; background: #fff; padding: 10px; } .swatch { width: 100%; min-height: 150px; border-radius: 7px; border: 1px solid var(--line); } .details-list { display: grid; gap: 7px; } .detail-row { display: grid; grid-template-columns: minmax(90px, .42fr) minmax(0, 1fr); gap: 8px; align-items: start; padding: 7px 0; border-bottom: 1px solid color-mix(in srgb, var(--line) 70%, transparent); } .detail-row:last-child { border-bottom: 0; } .detail-row strong { overflow-wrap: anywhere; } .raw-panel { padding: 0; overflow: hidden; } .raw-panel > summary { list-style: none; display: grid; gap: 3px; padding: 12px 14px; cursor: pointer; font-weight: 700; } .raw-panel > summary::-webkit-details-marker { display: none; } .raw-panel[open] > summary { border-bottom: 1px solid var(--line); } .raw-actions { justify-content: flex-start; padding: 10px 12px 0; } .raw-panel .code-wrap { border: 0; border-radius: 0; margin-top: 10px; } .paragraph { overflow-wrap: anywhere; white-space: pre-line; } .empty-card { min-height: 180px; display: grid; align-content: center; gap: 8px; } .empty-state { min-height: 280px; display: grid; place-content: center; gap: 8px; text-align: center; color: var(--muted); } .pulse-dot { width: 12px; height: 12px; margin: 0 auto; border-radius: 999px; background: var(--accent); } .drag-light *, .drag-light *::before, .drag-light *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } .drag-strong .result-hero, .drag-strong .result-card, .drag-strong .side-panel, .drag-strong .raw-panel, .drag-strong .table-wrap, .drag-strong .code-wrap, .drag-strong .summary-item, .drag-strong .kv, .drag-strong .list-item { box-shadow: none !important; filter: none !important; backdrop-filter: none !important; } @media (max-width: 1060px) { .result-layout { grid-template-columns: 1fr; } .result-side { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); } } @media (max-width: 760px) { .result-hero { grid-template-columns: 1fr; } .actions { justify-content: flex-start; } .summary-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 560px) { .result-shell { padding: 10px; } .summary-strip, .rankedlist, .newslist, .cardlist, .result-side { grid-template-columns: 1fr; } .list-item, .list-item:has(.link-actions), .file-card, .link-card { grid-template-columns: 1fr; } .link-actions { justify-content: flex-start; width: 100%; } .result-card, .side-panel { padding: 12px; } } @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }