.tsnm-banner[hidden],.tsnm-banner [hidden]{display:none!important}
.tsnm-banner{background:var(--ts-navy,#223a5b);color:#fff;border-bottom:1px solid #31537f;font-family:Manrope,sans-serif;font-size:14px;line-height:1.5}
.tsnm-banner__inner{box-sizing:border-box;max-width:1400px;width:calc(100% - 64px);margin-inline:auto;display:flex;align-items:center;gap:12px;min-height:52px;padding-block:4px}
.tsnm-banner__icon{width:20px;height:20px;flex:none}
.tsnm-banner .tsnm-banner__content{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:4px 14px;min-width:0;color:inherit;text-decoration:none;padding-block:6px}
.tsnm-banner__title{font-weight:600;overflow-wrap:anywhere}
.tsnm-banner__status{display:inline-block;padding:3px 10px;border-radius:4px;background:#eef3f9;color:#31537f;font-weight:600;max-width:100%;box-sizing:border-box}
.tsnm-banner .tsnm-banner__more,.tsnm-banner .tsnm-banner__overview{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.tsnm-banner .tsnm-banner__close{display:flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:4px;background:transparent;color:inherit;font:400 26px/1 sans-serif;cursor:pointer}
.tsnm-banner .tsnm-banner__close:hover{background:#31537f;color:#fff}
.tsnm-banner .tsnm-banner__more:hover,.tsnm-banner .tsnm-banner__overview:hover{color:#fff;text-decoration-thickness:2px}
.tsnm-banner :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:2px}
/* Mobile: title owns its row; actions wrap independently of the close button. */
@media(max-width:767px){
 .tsnm-banner{font-size:14px;line-height:1.5}
 .tsnm-banner__inner{position:relative;width:calc(100% - 32px);padding-block:14px;gap:0;align-items:flex-start}
 .tsnm-banner__icon{display:none}
 .tsnm-banner .tsnm-banner__content{display:flex;gap:8px 16px;padding:0;align-items:center}
 .tsnm-banner__title{flex:0 0 100%;box-sizing:border-box;padding-right:48px;min-height:32px;display:flex;align-items:center;line-height:1.5}
 .tsnm-banner__status{padding:4px 10px;font-size:13px;white-space:normal}
 .tsnm-banner .tsnm-banner__more,.tsnm-banner .tsnm-banner__overview{display:inline-flex;align-items:center;gap:5px;min-height:44px;max-width:100%;box-sizing:border-box;padding-block:8px;line-height:1.5}
 .tsnm-banner .tsnm-banner__overview{flex-basis:100%;border-top:1px solid rgba(255,255,255,.18);margin-top:2px;padding-top:12px}
 .tsnm-banner .tsnm-banner__close{position:absolute;top:8px;right:-6px;width:44px;height:44px}
}
