/* Yunshang Global Design Polish | 2026-03-03 */
:root { --ysp-bg: #f4efe6; --ysp-surface: rgba(255, 255, 255, 0.82); --ysp-surface-strong: rgba(255, 255, 255, 0.92); --ysp-text: #1f2732; --ysp-muted: #647182; --ysp-border: rgba(31, 39, 50, 0.14); --ysp-brand: #1f5f58; --ysp-brand-2: #c1732e; --ysp-shadow: 0 12px 28px rgba(24, 32, 41, 0.1);
} @media (prefers-color-scheme: dark) { :root { --ysp-bg: #161c24; --ysp-surface: rgba(29, 37, 48, 0.88); --ysp-surface-strong: rgba(36, 44, 56, 0.95); --ysp-text: #e9edf4; --ysp-muted: #b0bccb; --ysp-border: rgba(233, 237, 244, 0.16); --ysp-brand: #4ea89a; --ysp-brand-2: #e2a067; --ysp-shadow: 0 18px 36px rgba(0, 0, 0, 0.34); }
} html { background: var(--ysp-bg);
} body { color: var(--ysp-text); font-family: Avenir Next, PingFang SC, Hiragino Sans GB, Microsoft YaHei, sans-serif; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased;
} @media (min-width: 980px) { body::before { content: ; position: fixed; inset: 0; pointer-events: none; background: radial-gradient(circle at 9% 13%, rgba(193, 115, 46, 0.1), transparent 26%), radial-gradient(circle at 88% 84%, rgba(31, 95, 88, 0.1), transparent 30%); z-index: -1; }
} :where(main, .main, .app, .page, .container, .content, .panel, .tool-container, .tool-card, .card, .result-card, .widget, .box) { border-radius: 14px;
} :where(.card, .tool-card, .result-card, .panel, .widget) { background: var(--ysp-surface); border: 1px solid var(--ysp-border); box-shadow: var(--ysp-shadow);
} :where(h1, h2, h3, h4) { letter-spacing: 0.2px;
} :where(p, .desc, .description, .subtitle, .hint, .helper-text) { color: var(--ysp-muted);
} :where(input, textarea, select) { border-radius: 10px; border: 1px solid var(--ysp-border); background: var(--ysp-surface-strong); color: var(--ysp-text);
} :where(input:focus, textarea:focus, select:focus) { outline: none; border-color: color-mix(in srgb, var(--ysp-brand) 52%, transparent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--ysp-brand) 18%, transparent);
} :where(button, .btn, a.btn, input[type=submit], input[type=button]) { border-radius: 10px; border: 1px solid var(--ysp-border); background: var(--ysp-surface-strong); color: var(--ysp-text); transition: transform .16s ease, box-shadow .18s ease, border-color .18s ease;
} :where(button:hover, .btn:hover, a.btn:hover, input[type=submit]:hover, input[type=button]:hover) { transform: translateY(-1px); border-color: color-mix(in srgb, var(--ysp-brand) 34%, var(--ysp-border)); box-shadow: 0 8px 16px rgba(24, 32, 41, 0.12);
} :where(.btn-primary, .primary, .is-primary, button.primary) { background: var(--ysp-brand); border-color: var(--ysp-brand); color: #fff;
} :where(.btn-primary:hover, .primary:hover, .is-primary:hover, button.primary:hover) { background: color-mix(in srgb, var(--ysp-brand) 86%, #000); border-color: color-mix(in srgb, var(--ysp-brand) 86%, #000);
} :where(a) { color: var(--ysp-brand); text-underline-offset: 3px; text-decoration-thickness: 1px;
} :where(a:hover) { color: var(--ysp-brand-2);
} :where(.nav a, .menu a, .tabs a, .category a, .sidebar a) { border-radius: 10px;
} :where(.nav .active, .menu .active, .tabs .active, .category .active, .sidebar .active, a.active) { color: var(--ysp-brand) !important; background: color-mix(in srgb, var(--ysp-brand) 14%, transparent);
} :where(.badge, .tag, .chip) { border-radius: 999px; border: 1px solid color-mix(in srgb, var(--ysp-brand) 20%, var(--ysp-border)); background: color-mix(in srgb, var(--ysp-brand) 8%, #fff);
} /* YSP ip-lookup targeted refresh 2026-03-03 */
.ip-lookup-page { background: linear-gradient(180deg, #f6f1e8 0%, #efe8db 100%); color: #1f2732;
} .ip-lookup-page .container { max-width: 1240px; margin: 22px auto 30px; padding: 0 18px 28px;
} .ip-lookup-page .header { border: 1px solid rgba(31, 95, 88, 0.14); border-radius: 18px; background: rgba(255, 255, 255, 0.84); box-shadow: 0 16px 34px rgba(28, 36, 45, 0.1); padding: 20px 24px;
} .ip-lookup-page .subtitle { color: #5b6574; letter-spacing: 0.3px;
} .ip-lookup-page .glass-card { background: rgba(255, 255, 255, 0.9); border: 1px solid rgba(31, 95, 88, 0.16); border-radius: 16px; box-shadow: 0 14px 30px rgba(24, 32, 41, 0.1); backdrop-filter: blur(6px);
} .ip-lookup-page .glass-card:hover { transform: translateY(-2px); border-color: rgba(31, 95, 88, 0.26); box-shadow: 0 18px 34px rgba(24, 32, 41, 0.14);
} .ip-lookup-page .search-header h2,
.ip-lookup-page .results-header h3,
.ip-lookup-page .stat-content h4 { color: #1f2732; text-shadow: none;
} .ip-lookup-page .input-wrapper,
.ip-lookup-page .search-tabs,
.ip-lookup-page .textarea-wrapper,
.ip-lookup-page .map-info,
.ip-lookup-page .result-item,
.ip-lookup-page .action-btn,
.ip-lookup-page .quick-ip-btn,
.ip-lookup-page .tab-btn { background: #ffffff; border-color: rgba(31, 39, 50, 0.14);
} .ip-lookup-page .result-value,
.ip-lookup-page .result-content h4,
.ip-lookup-page .batch-summary h4,
.ip-lookup-page .batch-info h4,
.ip-lookup-page .content-section-title { color: #1f2732;
} .ip-lookup-page .content-section-p,
.ip-lookup-page .content-section-list,
.ip-lookup-page .content-section-a,
.ip-lookup-page .content-section-q,
.ip-lookup-page .stat-label,
.ip-lookup-page .quick-label { color: #5f6978;
} .ip-lookup-page .search-btn,
.ip-lookup-page .batch-search-btn,
.ip-lookup-page .quick-ip-btn.primary { background: #1f5f58; border-color: #1f5f58; color: #fff;
} .ip-lookup-page .search-btn:hover,
.ip-lookup-page .batch-search-btn:hover,
.ip-lookup-page .quick-ip-btn.primary:hover { background: #184c47; border-color: #184c47;
} .ip-lookup-page .tab-btn.active { background: rgba(31, 95, 88, 0.13); color: #1f5f58; border-color: rgba(31, 95, 88, 0.3);
} .ip-lookup-page .result-icon,
.ip-lookup-page .stat-icon { background: rgba(31, 95, 88, 0.12); color: #1f5f58;
} @media (prefers-color-scheme: dark) { .ip-lookup-page { background: linear-gradient(180deg, #161c24 0%, #131920 100%); color: #e9edf4; } .ip-lookup-page .header, .ip-lookup-page .glass-card { background: rgba(27, 35, 45, 0.9); border-color: rgba(78, 168, 154, 0.26); } .ip-lookup-page .search-header h2, .ip-lookup-page .results-header h3, .ip-lookup-page .stat-content h4, .ip-lookup-page .result-value, .ip-lookup-page .result-content h4, .ip-lookup-page .content-section-title { color: #e9edf4; } .ip-lookup-page .content-section-p, .ip-lookup-page .content-section-list, .ip-lookup-page .content-section-a, .ip-lookup-page .content-section-q, .ip-lookup-page .stat-label, .ip-lookup-page .quick-label, .ip-lookup-page .subtitle { color: #b5c0cf; } .ip-lookup-page .input-wrapper, .ip-lookup-page .search-tabs, .ip-lookup-page .textarea-wrapper, .ip-lookup-page .map-info, .ip-lookup-page .result-item, .ip-lookup-page .action-btn, .ip-lookup-page .quick-ip-btn, .ip-lookup-page .tab-btn { background: rgba(21, 27, 35, 0.92); border-color: rgba(233, 237, 244, 0.16); color: #e9edf4; }
}
