.ai-public-notice-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;
    display: grid !important;
    place-items: center !important;
    padding: 18px !important;
    background: rgba(0, 0, 0, .42) !important;
    backdrop-filter: blur(8px) !important;
}

.ai-public-notice-card {
    width: min(680px, calc(100vw - 28px)) !important;
    max-height: min(82vh, 760px) !important;
    display: grid !important;
    gap: 18px !important;
    padding: 26px 24px 22px !important;
    border-radius: 30px !important;
    border: 1px solid rgba(214, 180, 106, .78) !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(214, 180, 106, .34), transparent 38%),
        linear-gradient(145deg, #FFF8EA, #EBD7AA) !important;
    box-shadow:
        0 34px 120px rgba(0, 0, 0, .58),
        inset 0 1px 0 rgba(255, 255, 255, .86) !important;
    color: #173629 !important;
    text-align: center !important;
    animation: aiPublicNoticePop .18s ease-out both !important;
}

.ai-public-notice-card.is-ok {
    border-color: rgba(53, 143, 88, .72) !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(124, 203, 155, .38), transparent 38%),
        linear-gradient(145deg, #F6FFF6, #D8F1DB) !important;
}

.ai-public-notice-card.is-error {
    border-color: rgba(190, 70, 70, .82) !important;
    background:
        radial-gradient(circle at 0% 0%, rgba(217, 108, 108, .36), transparent 38%),
        linear-gradient(145deg, #FFF2ED, #F0C3B8) !important;
    color: #561B17 !important;
}

.ai-public-notice-icon {
    display: inline-grid !important;
    place-items: center !important;
    justify-self: center !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .56) !important;
    color: #1D7D3D !important;
    font-size: 24px !important;
    font-weight: 950 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.ai-public-notice-card.is-error .ai-public-notice-icon {
    color: #9B2E25 !important;
}

.ai-public-notice-title {
    margin: 0 !important;
    color: inherit !important;
    font-size: clamp(21px, 2.5vw, 30px) !important;
    font-weight: 950 !important;
    letter-spacing: -.03em !important;
    line-height: 1.08 !important;
}

.ai-public-notice-text {
    max-height: min(46vh, 420px) !important;
    overflow: auto !important;
    color: rgba(23, 54, 41, .86) !important;
    font-size: 15px !important;
    font-weight: 760 !important;
    line-height: 1.55 !important;
    white-space: pre-line !important;
}

.ai-public-notice-card.is-error .ai-public-notice-text {
    color: rgba(86, 27, 23, .88) !important;
}

.ai-public-notice-ok {
    appearance: none !important;
    border: 0 !important;
    outline: 0 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: center !important;
    gap: 8px !important;
    min-width: 132px !important;
    min-height: 48px !important;
    padding: 0 24px !important;
    border-radius: 999px !important;
    background: linear-gradient(145deg, #1F8F49, #116333) !important;
    color: #FFFFFF !important;
    box-shadow:
        0 14px 30px rgba(17, 99, 51, .28),
        inset 0 1px 0 rgba(255, 255, 255, .25) !important;
    font-size: 15px !important;
    font-weight: 950 !important;
}

@keyframes aiPublicNoticePop {
    from { opacity: 0; transform: translateY(10px) scale(.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 640px) {
    .ai-public-notice-card {
        padding: 22px 16px 18px !important;
        border-radius: 24px !important;
    }

    .ai-public-notice-ok {
        width: 100% !important;
    }
}
