/* Notificações — banners, sino, central e preferências */
.sino{position:relative;width:42px;height:42px;border:1px solid var(--cor-borda);background:#fff;border-radius:50%;display:grid;place-items:center;color:var(--cor-texto);flex:none}
.sino i{font-size:1.05rem}
.sino.toca i{color:var(--cor-primaria);animation:sinoBalanca 2.6s ease-in-out infinite;transform-origin:50% 10%}
@keyframes sinoBalanca{0%,88%,100%{transform:rotate(0)}91%{transform:rotate(14deg)}94%{transform:rotate(-12deg)}97%{transform:rotate(8deg)}}
.sino-n{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:20px;background:var(--verm);color:#fff;font-size:.68rem;font-weight:700;display:grid;place-items:center;border:2px solid var(--cor-fundo)}
.sino-n.pop{animation:nbPop .35s cubic-bezier(.2,1.6,.4,1)}
@keyframes nbPop{0%{transform:scale(.4)}100%{transform:scale(1)}}
#nbBanners{position:fixed;top:calc(10px + env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:96;display:flex;flex-direction:column;gap:8px;width:min(420px,calc(100vw - 20px));pointer-events:none}
.nb-card{pointer-events:auto;position:relative;display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:12px 14px 14px;box-shadow:0 10px 30px rgba(15,23,42,.22),0 0 0 1px rgba(15,23,42,.05);border-left:5px solid var(--nb-cor);animation:nbEntra .32s cubic-bezier(.2,1.2,.4,1);touch-action:pan-y;cursor:pointer;overflow:hidden;transition:transform .18s,opacity .18s}
.nb-card.saindo{opacity:0;transform:translateY(-14px) scale(.97)}
@keyframes nbEntra{from{opacity:0;transform:translateY(-22px) scale(.96)}to{opacity:1;transform:none}}
.nb-ic{width:42px;height:42px;border-radius:50%;background:var(--nb-bg);color:var(--nb-cor);display:grid;place-items:center;flex:none}
.nb-txt{display:flex;flex-direction:column;min-width:0;flex:1}
.nb-txt b{font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nb-txt small{color:var(--cor-texto-sec);font-size:.84rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}
.nb-txt em{font-style:normal;font-size:.7rem;color:var(--cor-primaria);font-weight:600;margin-top:2px}
.nb-t{font-size:.7rem;color:var(--cor-texto-sec);align-self:flex-start}
.nb-x{position:absolute;top:4px;right:4px;width:26px;height:26px;border:0;background:none;color:var(--cor-texto-sec);font-size:.8rem;min-height:0}
.nb-prog{position:absolute;left:0;bottom:0;height:3px;background:var(--nb-cor);opacity:.5;width:100%;transform-origin:left;animation:nbProg 6.5s linear forwards}
@keyframes nbProg{to{transform:scaleX(0)}}
.nc-cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.nc-cab h3{margin:0}
.nc-abas{display:flex;gap:6px;margin-bottom:10px;overflow-x:auto}
.nc-abas button{border:1px solid var(--cor-borda);background:#fff;border-radius:30px;padding:7px 14px;font-weight:600;font-size:.84rem;white-space:nowrap;min-height:38px}
.nc-abas .ativo{background:var(--cor-primaria);border-color:var(--cor-primaria);color:#fff}
.nc-lista{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow:auto}
.nc-item{position:relative;display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid var(--cor-borda);border-radius:12px;padding:10px 12px}
.nc-item.nova{background:#f5f9ff;border-color:#c7dafc}
.nc-t{font-size:.72rem;color:var(--cor-texto-sec);align-self:flex-start;white-space:nowrap}
.nc-dot{position:absolute;right:10px;bottom:10px;width:9px;height:9px;border-radius:50%;background:var(--cor-primaria)}
.np-sw{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--cor-borda);margin:0;font-weight:500}
.np-sw input{position:absolute;opacity:0}.np-sw i{width:46px;height:28px;border-radius:30px;background:#cfd6e2;position:relative;flex:none;transition:background .2s}
.np-sw i::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .2s}
.np-sw input:checked+i{background:var(--cor-primaria)}.np-sw input:checked+i::after{transform:translateX(18px)}
.np-linha{display:flex;align-items:center;gap:10px;padding:10px 0}.np-linha input[type=range]{flex:1;min-height:0;padding:0}.np-linha input[type=time]{width:auto;min-height:42px}
.np-tons{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 10px}
.np-tom{border:1px solid var(--cor-borda);background:#fff;border-radius:30px;padding:8px 14px;font-weight:600;font-size:.84rem}.np-tom.sel{background:var(--azul-bg);border-color:var(--cor-primaria);color:var(--cor-primaria)}
.modal h4{margin:14px 0 6px}
.np-tipos{display:flex;flex-wrap:wrap;gap:8px}.np-chip{margin:0;font-weight:500}.np-chip input{position:absolute;opacity:0}
.np-chip span{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--cor-borda);border-radius:30px;padding:8px 12px;font-size:.84rem;background:#fff}
.np-chip input:checked+span{background:var(--azul-bg);border-color:#9db9f3}
.np-nota{font-size:.78rem;margin:12px 0 0}
@media(max-width:880px){.topo{flex-wrap:nowrap}}
