.site-notice { --notice-accent: var(--ink-strong, var(--ink, #0b0b0d)); --notice-accent-soft: rgba(11, 11, 13, 0.08); --notice-accent-border: rgba(11, 11, 13, 0.16); --notice-surface: var(--surface, var(--paper, #ffffff)); --notice-text: var(--text-primary, var(--ink-2, #111827)); --notice-text-soft: var(--text-secondary, var(--muted, #6b7280)); position: relative; display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: start; gap: 14px; width: 100%; margin: 0 0 18px; padding: 16px 18px 16px 22px; border-radius: var(--radius-xl, var(--border-radius-xl, 22px)); border: 1px solid var(--notice-accent-border); background: radial-gradient(circle at 100% 0, rgba(11, 11, 13, 0.05), transparent 34%), linear-gradient(135deg, var(--notice-accent-soft) 0%, rgba(255, 255, 255, 0.98) 56%, var(--notice-surface) 100%); box-shadow: 0 18px 40px rgba(11, 11, 13, 0.08); overflow: hidden; } .site-notice::before { content: ""; position: absolute; top: 10px; bottom: 10px; left: 10px; width: 4px; border-radius: 999px; background: linear-gradient(180deg, var(--notice-accent) 0%, rgba(11, 11, 13, 0.22) 100%); } .site-notice::after { content: ""; position: absolute; top: 0; left: 22px; right: 22px; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.92), transparent); } .site-notice[hidden], .site-notice--hidden { display: none !important; } .site-notice__icon { position: relative; z-index: 1; width: 44px; height: 44px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; font-size: 1rem; line-height: 1; color: var(--notice-accent); background: rgba(255, 255, 255, 0.72); border: 1px solid rgba(255, 255, 255, 0.78); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75); } .site-notice__content { position: relative; z-index: 1; display: grid; gap: 6px; min-width: 0; } .site-notice__title { font-size: 1rem; font-weight: 900; line-height: 1.35; letter-spacing: -0.01em; color: var(--notice-text); } .site-notice__message { font-size: 0.93rem; line-height: 1.65; white-space: pre-wrap; word-break: break-word; color: var(--notice-text-soft); } .site-notice__title + .site-notice__message { margin-top: -2px; } .site-notice__content > :only-child.site-notice__message { color: var(--notice-text); font-weight: 600; } .site-notice--info { --notice-accent: #0f172a; --notice-accent-soft: rgba(15, 23, 42, 0.08); --notice-accent-border: rgba(15, 23, 42, 0.16); } .site-notice--success { --notice-accent: #166534; --notice-accent-soft: rgba(22, 101, 52, 0.10); --notice-accent-border: rgba(22, 101, 52, 0.18); } .site-notice--warning { --notice-accent: #92400e; --notice-accent-soft: rgba(146, 64, 14, 0.10); --notice-accent-border: rgba(146, 64, 14, 0.18); } .site-notice--danger { --notice-accent: #b42318; --notice-accent-soft: rgba(180, 35, 24, 0.10); --notice-accent-border: rgba(180, 35, 24, 0.18); } .container > .site-notice { margin-bottom: 22px; } body.auth-body .site-notice { margin-bottom: 6px; padding: 15px 16px 15px 20px; border-radius: var(--radius-lg, 18px); box-shadow: 0 16px 36px rgba(11, 11, 13, 0.08); } body.auth-body .site-notice::before { left: 9px; } body.auth-body .site-notice::after { left: 20px; right: 20px; } body.auth-body .site-notice__icon { width: 40px; height: 40px; border-radius: 12px; } body.auth-body .site-notice__title { font-size: 0.96rem; } body.auth-body .site-notice__message { font-size: 0.89rem; line-height: 1.58; } @media (max-width: 640px) { .site-notice { grid-template-columns: 38px minmax(0, 1fr); gap: 12px; padding: 14px 14px 14px 18px; border-radius: 18px; } .site-notice::before { top: 8px; bottom: 8px; left: 8px; } .site-notice::after { left: 18px; right: 18px; } .site-notice__icon { width: 38px; height: 38px; border-radius: 12px; } .site-notice__title { font-size: 0.95rem; } .site-notice__message { font-size: 0.88rem; line-height: 1.55; } } @media (prefers-reduced-motion: no-preference) { .site-notice { animation: siteNoticeEnter 220ms cubic-bezier(0.16, 1, 0.3, 1) both; } } @keyframes siteNoticeEnter { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }