.nt-bell{position:relative;display:inline-block}
.nt-btn{position:relative;min-width:44px;min-height:44px;border:0;background:transparent;font-size:1.4rem;cursor:pointer;border-radius:12px;color:#0f2a3d}
.nt-count{position:absolute;top:2px;right:2px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#0d9488;color:#fff;font-size:.7rem;font-weight:700;display:grid;place-items:center;box-sizing:border-box}
.nt-panel{position:absolute;right:0;top:48px;width:min(380px,92vw);max-height:70vh;overflow:auto;background:#fff;border:1px solid #e3eef8;border-radius:16px;box-shadow:none;z-index:60;padding:10px}
.nt-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;color:#0f2a3d;font-weight:700}
.nt-day{font-size:.75rem;color:#6b6f76;margin:10px 0 4px}
.nt-item{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:8px;border-radius:12px;color:#0f2a3d;text-decoration:none;cursor:pointer;border:0;background:transparent;width:100%;text-align:left;font:inherit}
.nt-item:hover{background:#f1f9ff}.nt-item.unread{background:#eaf5fd}
.nt-ic{font-size:1.2rem;flex:none}.nt-tx{flex:1;min-width:0}.nt-tt{font-weight:700;font-size:clamp(.88rem,3.2vw,.98rem)}.nt-bd{font-size:.85rem;color:#47657f;word-break:break-word}.nt-tm{font-size:.72rem;color:#6b6f76}
.nt-link{background:transparent;border:0;color:#0d9488;font-weight:700;cursor:pointer;min-height:44px;padding:0 6px;font:inherit}
.nt-prefs{display:grid;gap:8px;margin-top:8px;font-size:.88rem}
.nt-prefs label{display:flex;align-items:center;gap:8px;min-height:44px}
.nt-page{max-width:680px}
