body>.flash{
    position:fixed;
    top:94px;
    right:24px;
    z-index:1000;
    width:min(520px,calc(100vw - 32px));
    max-height:min(55vh,420px);
    margin:0;
    padding:16px 48px 16px 18px;
    overflow:auto;
    border:1px solid transparent;
    border-radius:12px;
    box-shadow:0 16px 42px rgba(16,47,39,.22);
    line-height:1.5;
}
body>.flash.success{border-color:#b9dfcb;background:#e7f7ee;color:#176442}
body>.flash.error{border-color:#efc1c1;background:#fff0f0;color:#8b2929}
body>.flash strong{display:block;margin-bottom:5px}
body>.flash ul{margin:6px 0 0;padding-left:20px}
body>.flash-close{
    position:absolute;
    top:8px;
    right:10px;
    width:30px;
    height:30px;
    padding:0;
    border:0;
    border-radius:50%;
    background:transparent;
    color:inherit;
    font-size:23px;
    line-height:28px;
    cursor:pointer;
}
body>.flash-close:hover{background:rgba(0,0,0,.07)}
@media(max-width:600px){body>.flash{top:86px;right:16px;left:16px;width:auto;max-height:45vh}}

.notification-bell{position:relative;display:block}
.notification-bell summary{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#173d33;cursor:pointer;list-style:none;transition:background .18s ease,transform .18s ease}
.notification-bell summary::-webkit-details-marker{display:none}
.notification-bell summary:hover,.notification-bell[open] summary{background:#edf5f1;transform:translateY(-1px)}
.notification-bell summary svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.notification-bell summary b{position:absolute;top:0;right:-2px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border:2px solid #fff;border-radius:10px;background:#d33f3f;color:#fff;font-size:10px;line-height:1}
.notification-menu{position:absolute;top:49px;right:0;z-index:1100;width:min(390px,calc(100vw - 30px));overflow:hidden;border:1px solid #dbe5e0;border-radius:14px;background:#fff;box-shadow:0 20px 52px rgba(12,41,34,.2)}
.notification-menu-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e4eae7}
.notification-menu-head>a{color:#176442;font-size:12px;font-weight:750}
.notification-menu-item{display:flex!important;gap:11px;padding:13px 16px!important;border-bottom:1px solid #edf1ef;color:#17221f;white-space:normal!important}
.notification-menu-item:hover{background:#f6faf8}
.notification-menu-item>span{flex:0 0 auto;width:9px;height:9px;margin-top:6px;border-radius:50%;background:#e7a52d}
.notification-menu-item div{min-width:0}
.notification-menu-item strong,.notification-menu-item small,.notification-menu-item time{display:block}
.notification-menu-item strong{font-size:13px}
.notification-menu-item small{margin-top:2px;overflow:hidden;color:#53645e;font-size:12px;line-height:1.4;text-overflow:ellipsis}
.notification-menu-item time{margin-top:4px;color:#87938f;font-size:10px}
.notification-menu-empty{padding:25px 18px;text-align:center;color:#68736f}
@media(max-width:600px){.notification-menu{position:fixed;top:72px;right:12px;left:12px;width:auto}}
