.platform-notification {
    --notice-color:#157957; --notice-soft:#e9f7f0;
    width:min(460px,calc(100vw - 32px)); max-height:calc(100dvh - 40px);
    padding:0; border:1px solid #e5ece8; border-radius:24px; background:#fff;
    color:#23392f; box-shadow:0 28px 100px #102d3652;
    font-family:Inter,"Segoe UI",Arial,sans-serif; overflow:auto;
}
.platform-notification::backdrop { background:#102b36a6; backdrop-filter:blur(5px); }
.platform-notification[open] { animation:notification-enter .2s ease-out; }
.platform-notification[data-tone="error"] { --notice-color:#bf3748; --notice-soft:#fff0f2; }
.platform-notification[data-tone="warning"] { --notice-color:#9a650e; --notice-soft:#fff6df; }
.platform-notification[data-tone="info"] { --notice-color:#2769a5; --notice-soft:#edf5ff; }
.platform-notification-content { position:relative; padding:36px 30px 26px; text-align:center; border-top:5px solid var(--notice-color); }
.platform-notification-close { position:absolute; top:10px; right:14px; width:34px; height:34px; border:0; border-radius:50%; background:#f3f6f4; color:#67796f; font-size:24px; line-height:1; cursor:pointer; }
.platform-notification-icon { display:grid; place-items:center; width:76px; height:76px; margin:0 auto 20px; border-radius:26px; background:var(--notice-soft); color:var(--notice-color); }
.platform-notification-icon svg { width:38px; height:38px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.platform-notification-brand { font-size:10px; letter-spacing:2px; font-weight:750; color:#718378; }
.platform-notification h2 { margin:10px 0 12px; color:#203b2f; font-size:25px; font-weight:750; line-height:1.25; }
#platform-notification-message { color:#5c6d64; font-size:15px; line-height:1.7; overflow-wrap:anywhere; white-space:pre-line; }
.platform-notification-footer { margin-top:26px; }
.platform-notification-count { display:block; margin-bottom:12px; font-size:12px; color:#7b8981; }
.platform-notification-count:empty { display:none; }
.platform-notification-button { width:100%; padding:13px 20px; border:0; border-radius:12px; background:var(--notice-color); color:white; font:inherit; font-weight:650; cursor:pointer; transition:filter .15s; }
.platform-notification-button:hover { filter:brightness(.92); }
.platform-notification :is(button):focus-visible { outline:3px solid var(--notice-color); outline-offset:4px; }
[data-platform-notification][hidden] { display:none!important; }
@keyframes notification-enter { from { opacity:0; transform:translateY(12px) scale(.97); } to { opacity:1; transform:translateY(0) scale(1); } }
@media(max-width:480px) { .platform-notification-content { padding:32px 22px 22px; } .platform-notification h2 { font-size:23px; } }
@media(prefers-reduced-motion:reduce) { .platform-notification[open] { animation:none; } }
