:root { --bg: #07111f; --panel: rgba(9, 20, 40, 0.78); --panel-strong: rgba(10, 24, 46, 0.94); --line: rgba(103, 213, 255, 0.22); --line-strong: rgba(103, 213, 255, 0.48); --text: #edf7ff; --muted: #96b2d1; --accent: #67d5ff; --accent-strong: #2de2a6; --warning: #ffcc66; --font-display: "Orbitron", "Segoe UI", sans-serif; --font-body: "Noto Sans SC", "Microsoft YaHei", sans-serif; } * { box-sizing: border-box; } html { color-scheme: dark; } body { margin: 0; min-height: 100vh; color: var(--text); font-family: var(--font-body); background: linear-gradient(135deg, rgba(7, 17, 31, 0.96), rgba(10, 28, 54, 0.96)), repeating-linear-gradient(90deg, rgba(103, 213, 255, 0.055) 0 1px, transparent 1px 72px), repeating-linear-gradient(0deg, rgba(103, 213, 255, 0.045) 0 1px, transparent 1px 72px); } a { color: inherit; } .notice-page { width: min(calc(100% - 32px), 1120px); margin: 0 auto; padding: 28px 0 56px; } .topbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 34px; } .brand, .back-link, .primary-action { display: inline-flex; align-items: center; min-height: 40px; border-radius: 999px; text-decoration: none; } .brand { gap: 10px; color: var(--text); font-weight: 700; } .brand-mark { display: inline-grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--line-strong); border-radius: 12px; color: var(--accent); font-family: var(--font-display); background: rgba(103, 213, 255, 0.08); } .back-link { padding: 0 16px; border: 1px solid var(--line); color: var(--muted); background: rgba(255, 255, 255, 0.04); } .back-link:hover, .primary-action:hover { border-color: var(--line-strong); color: var(--text); } .notice-hero { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 22px; align-items: stretch; margin-bottom: 22px; } .hero-copy, .status-panel, .notice-card, .side-card { border: 1px solid var(--line); background: var(--panel); box-shadow: 0 28px 60px rgba(0, 0, 0, 0.32); backdrop-filter: blur(18px); } .hero-copy { padding: clamp(28px, 5vw, 54px); border-radius: 24px; } .eyebrow { display: inline-block; margin-bottom: 14px; color: var(--accent); font-family: var(--font-display); font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; } h1, h2, p { margin-top: 0; } h1 { margin-bottom: 16px; font-size: clamp(34px, 6vw, 64px); line-height: 1.05; } .hero-copy p { max-width: 760px; margin-bottom: 0; color: var(--muted); font-size: 17px; line-height: 1.8; } .status-panel { display: flex; min-height: 240px; flex-direction: column; justify-content: space-between; padding: 24px; border-radius: 24px; } .status-badge { width: max-content; padding: 7px 12px; border-radius: 999px; color: #06111f; background: var(--warning); font-size: 13px; font-weight: 800; } .status-code { color: var(--accent); font-family: var(--font-display); font-size: 44px; font-weight: 700; } .status-panel p { margin-bottom: 0; color: var(--muted); } .notice-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 22px; align-items: start; } .notice-card, .side-card { border-radius: 20px; } .notice-card { padding: clamp(24px, 4vw, 40px); } .notice-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 22px; } .notice-meta span, .info-label { color: var(--muted); font-size: 13px; } .notice-meta span { padding: 6px 10px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255, 255, 255, 0.04); } .notice-card h2, .side-card h2 { margin-bottom: 12px; font-size: 24px; } .notice-card p, .side-card p { color: var(--muted); line-height: 1.8; } .info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 30px; } .info-grid div { min-height: 92px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255, 255, 255, 0.04); } .info-grid strong { display: block; margin-top: 8px; font-size: 16px; } .side-card { padding: 24px; } code { color: var(--accent); font-family: Consolas, "Courier New", monospace; } .primary-action { justify-content: center; width: 100%; margin-top: 14px; padding: 0 18px; border: 1px solid rgba(45, 226, 166, 0.5); color: #06111f; background: linear-gradient(135deg, var(--accent), var(--accent-strong)); font-weight: 800; } @media (max-width: 840px) { .notice-hero, .notice-layout { grid-template-columns: 1fr; } .status-panel { min-height: 180px; } .info-grid { grid-template-columns: 1fr; } } /* Light visual refresh for notice detail */ html { color-scheme: light; } body { color: #172033; background: linear-gradient(135deg, rgba(236, 248, 255, 0.92), rgba(255, 255, 255, 0.96) 48%, rgba(245, 250, 255, 0.94)), linear-gradient(90deg, rgba(37, 99, 235, 0.045) 1px, transparent 1px), linear-gradient(0deg, rgba(20, 184, 166, 0.035) 1px, transparent 1px); background-size: auto, 52px 52px, 52px 52px; } .brand { color: #172033; } .brand-mark { color: #2563eb; background: rgba(37, 99, 235, 0.07); border-color: rgba(37, 99, 235, 0.2); } .back-link { color: #66758a; background: #ffffff; border-color: rgba(120, 144, 176, 0.24); } .back-link:hover, .primary-action:hover { color: #172033; border-color: rgba(37, 99, 235, 0.36); } .hero-copy, .status-panel, .notice-card, .side-card { background: rgba(255, 255, 255, 0.84); border-color: rgba(120, 144, 176, 0.24); box-shadow: 0 18px 44px rgba(47, 74, 112, 0.12); backdrop-filter: blur(16px); } .eyebrow, .status-code, code { color: #2563eb; } h1, h2, .info-grid strong { color: #172033; } .hero-copy p, .status-panel p, .notice-card p, .side-card p, .notice-meta span, .info-label { color: #66758a; } .status-badge { color: #854d0e; background: #fef3c7; } .notice-meta span, .info-grid div { background: rgba(248, 251, 255, 0.86); border-color: rgba(120, 144, 176, 0.2); } .primary-action { color: #ffffff; background: linear-gradient(135deg, #2563eb, #0891b2); border-color: rgba(37, 99, 235, 0.16); box-shadow: 0 12px 24px rgba(37, 99, 235, 0.16); } /* Youthful unified layout refresh */ :root { --joy-blue: #2563eb; --joy-cyan: #06b6d4; --joy-mint: #10b981; --joy-coral: #fb7185; --joy-yellow: #facc15; --joy-ink: #172033; --joy-muted: #627187; --joy-line: rgba(96, 116, 148, 0.18); --joy-card: rgba(255, 255, 255, 0.9); } body { background: linear-gradient(128deg, rgba(255, 255, 255, 0.96) 0 34%, rgba(232, 249, 255, 0.9) 34% 58%, rgba(255, 246, 249, 0.92) 58% 100%), linear-gradient(90deg, rgba(37, 99, 235, 0.04) 1px, transparent 1px), linear-gradient(0deg, rgba(16, 185, 129, 0.035) 1px, transparent 1px); background-size: auto, 44px 44px, 44px 44px; } .notice-page { padding-top: 24px; } .topbar { margin-bottom: 22px; } .brand-mark { border-radius: 10px; color: #ffffff; background: linear-gradient(135deg, var(--joy-blue), var(--joy-coral)); border-color: transparent; } .back-link { min-height: 38px; border-radius: 12px; } .notice-hero { grid-template-columns: minmax(0, 1fr) minmax(220px, 0.28fr); gap: 16px; margin-bottom: 16px; } .notice-layout { grid-template-columns: minmax(0, 1fr) minmax(260px, 0.34fr); gap: 16px; } .hero-copy, .status-panel, .notice-card, .side-card { border-radius: 18px; border-color: var(--joy-line); background: var(--joy-card); box-shadow: 0 16px 34px rgba(37, 63, 101, 0.1); } .hero-copy { min-height: 250px; display: grid; align-content: center; padding: clamp(26px, 5vw, 48px); } .hero-copy, .notice-card, .side-card, .status-panel { position: relative; overflow: hidden; } .hero-copy::after, .notice-card::after, .side-card::after, .status-panel::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--joy-blue), var(--joy-cyan), var(--joy-mint), var(--joy-coral)); pointer-events: none; } .eyebrow { width: max-content; padding: 8px 14px; border-radius: 999px; background: linear-gradient(135deg, rgba(37, 99, 235, 0.11), rgba(6, 182, 212, 0.11)); color: var(--joy-blue); letter-spacing: 0.12em; } h1 { letter-spacing: 0; } .status-panel { position: relative; min-height: 250px; justify-content: center; gap: 22px; border-top: 5px solid var(--joy-coral); } .status-code { color: var(--joy-coral); font-size: clamp(34px, 4vw, 44px); } .status-badge, .notice-meta span { border: 0; } .status-badge { color: #8a4b05; background: #fff2bf; } .notice-meta span, .info-grid div { border-radius: 14px; background: #f8fbff; border-color: rgba(96, 116, 148, 0.12); } .notice-card, .side-card { padding: clamp(22px, 4vw, 34px); } .info-grid { gap: 10px; margin-top: 24px; } .primary-action { min-height: 46px; border-radius: 12px; background: linear-gradient(135deg, var(--joy-blue), var(--joy-cyan)); } @media (max-width: 520px) { .notice-page { width: min(calc(100% - 20px), 1120px); padding-top: 16px; } .topbar { align-items: flex-start; flex-direction: column; margin-bottom: 22px; } .hero-copy, .status-panel, .notice-card, .side-card { border-radius: 16px; } } /* 2010s skeuomorphic notice page */ html { color-scheme: light; } body.notice-skeuo { --bg: #eee7d7; --panel: #eef2f7; --panel-strong: #e3e8ef; --line: #9aa8b8; --line-strong: #6687aa; --text: #243247; --muted: #647086; --accent: #2d74bf; --accent-strong: #4b9a67; --warning: #d5942d; color: var(--text); background: linear-gradient(90deg, rgba(255, 255, 255, 0.23) 1px, transparent 1px), linear-gradient(0deg, rgba(60, 47, 27, 0.07) 1px, transparent 1px), radial-gradient(circle at 18% 6%, rgba(255, 255, 255, 0.75), transparent 30%), linear-gradient(135deg, #d8cbae 0%, #eee7d7 38%, #c3cfda 100%); background-size: 24px 24px, 24px 24px, auto, auto; } body.notice-skeuo .notice-page { width: min(calc(100% - 28px), 1120px); padding-top: 26px; } body.notice-skeuo .topbar { margin-bottom: 18px; padding: 12px; border: 1px solid #8d9bae; border-radius: 8px; background: linear-gradient(#fdfefe, #dfe7f0); box-shadow: 0 10px 22px rgba(68, 55, 34, 0.14), inset 0 1px 0 #ffffff; } body.notice-skeuo .brand-mark { border-color: #174b83; border-radius: 5px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.36), transparent 48%), linear-gradient(#3e8ddd, #1d65a9 52%, #174f8b); color: #ffffff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.45); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58), 0 2px 4px rgba(47, 66, 90, 0.26); } body.notice-skeuo .back-link, body.notice-skeuo .primary-action { border: 1px solid #174b83; border-radius: 5px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.36), transparent 48%), linear-gradient(#3e8ddd, #1d65a9 52%, #174f8b); color: #ffffff; font-weight: 800; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.45); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58), 0 2px 4px rgba(47, 66, 90, 0.26); } body.notice-skeuo .notice-hero { gap: 0; border: 1px solid #8998aa; border-radius: 8px; background: linear-gradient(#eef4fb, #cfd9e6 48%, #b6c4d5 49%, #e7edf4 100%); box-shadow: 0 18px 34px rgba(68, 55, 34, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.95); overflow: hidden; } body.notice-skeuo .hero-copy, body.notice-skeuo .status-panel, body.notice-skeuo .notice-card, body.notice-skeuo .side-card { border: 0; border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; } body.notice-skeuo .hero-copy { background: linear-gradient(180deg, rgba(255, 255, 255, 0.44), transparent 52%), linear-gradient(135deg, #f8fbff, #d7e2ef 58%, #c7d3e2); border-right: 1px solid rgba(101, 116, 135, 0.45); } body.notice-skeuo h1, body.notice-skeuo .notice-card h2, body.notice-skeuo .side-card h2 { color: #223049; font-family: Georgia, "Times New Roman", "Noto Serif SC", serif; text-shadow: 0 1px 0 #ffffff, 0 2px 3px rgba(60, 74, 92, 0.18); } body.notice-skeuo .eyebrow { padding: 7px 13px; border: 1px solid #8fa6be; border-radius: 4px; background: linear-gradient(#fefefe, #d5e1ef); color: #315d8d; font-family: "Noto Sans SC", "Microsoft YaHei", sans-serif; box-shadow: inset 0 1px 0 #ffffff, 0 1px 2px rgba(58, 73, 92, 0.12); } body.notice-skeuo .hero-copy p, body.notice-skeuo .status-panel p, body.notice-skeuo .notice-card p, body.notice-skeuo .side-card p, body.notice-skeuo .notice-meta span, body.notice-skeuo .info-label { color: var(--muted); text-shadow: 0 1px 0 rgba(255, 255, 255, 0.72); } body.notice-skeuo .status-panel { background: linear-gradient(180deg, rgba(255, 255, 255, 0.54), transparent 42%), linear-gradient(#ccd8e5, #aebdd0); } body.notice-skeuo .status-badge, body.notice-skeuo .notice-meta span { border: 1px solid #bcc7d2; border-radius: 5px; background: linear-gradient(#fffdf8, #ece5d7); color: #536174; box-shadow: inset 0 1px 0 #ffffff, 0 1px 2px rgba(76, 67, 47, 0.12); } body.notice-skeuo .status-code { padding: 15px 10px; border: 1px solid #7d8da0; border-radius: 6px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.4), transparent 45%), linear-gradient(#495f7b, #22364f); color: #f7fbff; text-align: center; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.58), 0 1px 8px rgba(182, 220, 255, 0.28); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.34), inset 0 -14px 22px rgba(0, 0, 0, 0.18), 0 2px 5px rgba(51, 62, 78, 0.22); } body.notice-skeuo .notice-layout { gap: 16px; } body.notice-skeuo .notice-card, body.notice-skeuo .side-card { border: 1px solid #8d9bae; border-radius: 8px; background: linear-gradient(#fdfefe, #e3e8ef); box-shadow: 0 14px 28px rgba(68, 55, 34, 0.18), inset 0 1px 0 #ffffff; } body.notice-skeuo .info-grid div { border: 1px solid #b7c3d1; border-radius: 6px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.78), transparent 42%), linear-gradient(#fffdf8, #eee7d8); box-shadow: inset 0 1px 0 #ffffff, 0 1px 2px rgba(64, 78, 96, 0.1); } body.notice-skeuo code { color: var(--accent); } @media (max-width: 760px) { body.notice-skeuo .notice-hero, body.notice-skeuo .notice-layout, body.notice-skeuo .info-grid { grid-template-columns: 1fr; } body.notice-skeuo .hero-copy { border-right: 0; border-bottom: 1px solid rgba(101, 116, 135, 0.45); } }