.nrvfav-heart{width:19px;height:19px;display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.nrvfav-toggle,.nrvfav-action,.nrvfav-launcher{font:inherit;box-sizing:border-box;color:#574861;background:#fff;border:1px solid #ddd7e2;border-radius:5px;box-shadow:none;text-transform:none;text-decoration:none;cursor:pointer}
.nrvfav-toggle:focus-visible,.nrvfav-action:focus-visible,.nrvfav-launcher:focus-visible{outline:2px solid #8c708d;outline-offset:3px}
.nrvfav-toggle:hover,.nrvfav-action:hover,.nrvfav-launcher:hover{background:#f8f6f9;color:#2b2149;text-decoration:none;border-color:#bfb2ca}
.nrvfav-toggle[disabled],.nrvfav-action[disabled]{opacity:.6;cursor:default}
.nrvfav-selected{color:#765778;background:#f7f2f7;border-color:#cabbcf}
.nrvfav-selected .nrvfav-heart{fill:#e5d8e7}
.nrvfav-product{display:block;margin:8px 0 14px}
.nrvfav-product-button{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;min-height:44px;margin:0;font-size:14px;line-height:1.4}
.nrvfav-product-help{max-width:440px;margin:7px 0 0;font-size:13px;line-height:1.6;color:#6a6171}
.nrvfav-product-help strong{font-weight:600;color:#574861}
.nrvfav-launcher{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0px));left:16px;z-index:90;display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 16px;font-size:15px;font-weight:600;line-height:1.4;color:#fff;background:#574861;border-color:#574861;border-radius:7px;box-shadow:0 3px 12px rgba(43,33,73,.18)}
.nrvfav-launcher:visited{color:#fff}
.nrvfav-launcher:hover,.nrvfav-launcher:focus-visible{color:#fff;background:#46394f;border-color:#46394f}
.nrvfav-launcher .nrvfav-heart{width:22px;height:22px;fill:rgba(255,255,255,.14)}
.nrvfav-count{min-width:24px;text-align:center;font-size:12px;line-height:20px;font-weight:700;color:#574861;background:#fff;border-radius:4px;padding:1px 5px}
.nrvfav-toast{position:fixed;bottom:calc(80px + env(safe-area-inset-bottom,0px));left:16px;z-index:91;max-width:min(330px,calc(100vw - 32px));margin:0;padding:10px 12px;border:1px solid #ddd7e2;border-radius:5px;background:#fff;color:#574861;font-size:12px;line-height:1.5;box-shadow:0 2px 10px rgba(43,33,73,.08)}
[data-nrvfav-config] [hidden],.nrvfav-page [hidden]{display:none!important}
.nrvfav-page{color:#40364f;padding-bottom:55px}
.nrvfav-page>p{font-size:14px;line-height:1.7;color:#6a6171}
.nrvfav-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 12px}
.nrvfav-action{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;min-height:38px;font-size:13px;line-height:1.4}
.nrvfav-status{font-size:13px;line-height:1.6;color:#6e526e;min-height:1.6em;margin:12px 0}
.nrvfav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:18px}
.nrvfav-item{display:flex;flex-direction:column;align-items:stretch;padding:12px;border:1px solid #e5e0e8;border-radius:6px;background:#fff;min-width:0}
.nrvfav-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;width:100%;background:#faf9fb;color:#857a8a;font-size:12px;overflow:hidden}
.nrvfav-image img{display:block;width:100%;height:100%;object-fit:contain}
.nrvfav-item h2{font-size:15px;font-weight:600;line-height:1.5;margin:14px 0;flex:1;overflow-wrap:anywhere}
.nrvfav-item h2 a{color:#2b2149}
.nrvfav-item-toggle{margin-top:9px;padding:7px 5px;font-size:12px;line-height:1.5}
.nrvfav-empty{padding:25px;border:1px dashed #ddd7e2;border-radius:6px;text-align:center}
.nrvfav-link-field label{display:block;font-size:13px;margin:10px 0 5px}
.nrvfav-link-field input{width:100%;border:1px solid #cfc5d7;padding:10px;border-radius:4px;font-size:13px}
/* Mobile launchers share one baseline; the motif module keeps its own link and behavior. */
@media(max-width:767px){
  body .nrvfav-launcher,body .nrvmotif-launcher[data-nrvmotif-launcher]{position:fixed;top:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px));box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:7px;width:calc((100% - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)) / 2);min-width:0;max-width:none;height:48px;min-height:48px;margin:0;padding:10px 8px;border-radius:7px;font-size:14px;font-weight:600;line-height:20px;white-space:nowrap;z-index:100}
  body .nrvfav-launcher{left:calc(8px + env(safe-area-inset-left,0px));right:auto}
  body .nrvmotif-launcher[data-nrvmotif-launcher]{right:calc(8px + env(safe-area-inset-right,0px));left:auto}
  .nrvfav-launcher .nrvfav-heart{width:20px;height:20px}
  .nrvfav-count{min-width:22px;padding:1px 4px}
  .nrvfav-toast{left:calc(8px + env(safe-area-inset-left,0px));bottom:calc(68px + env(safe-area-inset-bottom,0px));z-index:101}
}
@media(max-width:575px){.nrvfav-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.nrvfav-item{padding:8px}.nrvfav-item h2{font-size:13px}.nrvfav-item .nrvfav-action{font-size:12px;padding:8px 5px}}
