/* NIOU Guides — grille filtrable. Hérite des polices et couleurs du thème ; surchargez les variables --ng-* sur .niou-guides. */
.niou-guides{--ng-radius:5px;--ng-gap:34px 26px;--ng-ink:inherit;--ng-muted:rgba(0,0,0,.58);--ng-line:rgba(0,0,0,.16);--ng-accent:#4F46E5;--ng-bg:#F8F6F1;--ng-border:#E3DDCF;--ng-title-font:inherit;--ng-on:#111;--ng-on-text:#fff;--ng-ph:#eceaf3;--ng-heart:#d6336c;font-family:inherit;color:var(--ng-ink)}
.niou-guides *{box-sizing:border-box}
.ng-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.ng-chip{font:inherit;font-size:14px;line-height:1;cursor:pointer;color:inherit;background:transparent;border:1px solid var(--ng-line);border-radius:999px;padding:10px 16px;transition:background .15s,border-color .15s,color .15s}
.ng-chip:hover{border-color:currentColor}
.ng-chip[aria-pressed="true"]{background:var(--ng-on);border-color:var(--ng-on);color:var(--ng-on-text)}
.ng-chip small{margin-left:6px;font-size:12px;opacity:.6}

.niou-guides ul.ng-grid,.niou-guides ul.ng-grid>li{list-style:none!important;list-style-type:none!important;margin:0!important;padding:0!important;background-image:none}
.niou-guides ul.ng-grid>li::marker{content:''}
.niou-guides ul.ng-grid>li::before,.niou-guides ul.ng-grid>li::after{content:none!important;display:none!important}
.ng-grid{display:grid;gap:var(--ng-gap);grid-template-columns:repeat(var(--ng-cols,3),minmax(0,1fr))}
.ng-item{margin:0;padding:0}
.ng-item[hidden]{display:none}
.ng-card{display:flex;flex-direction:column;height:100%;margin:0;background:var(--ng-bg);border:1px solid var(--ng-border);border-radius:var(--ng-radius);overflow:hidden}
.ng-a{display:block;color:inherit;text-decoration:none}
.ng-thumb{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ng-ph)}
.ng-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
a.ng-a:hover .ng-thumb img{transform:scale(1.04)}
.ng-ph{display:block;width:100%;height:100%}
.ng-fav{position:absolute;right:10px;top:10px;width:30px;height:30px;border-radius:50%;background:#fff;color:var(--ng-heart);display:flex;align-items:center;justify-content:center;font-size:15px;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.ng-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.ng-body{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
/* Étiquettes de catégories sur la vignette */
.ng-pills{position:absolute;left:12px;top:12px;right:52px;display:flex;flex-wrap:wrap;gap:6px}
.ng-pill{background:#fff;color:#111;font-size:11px;line-height:1;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:7px 10px;border-radius:999px;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.ng-title{margin:0;padding:0;font-family:var(--ng-title-font);font-size:1.5em;line-height:1.15;font-weight:600;letter-spacing:-.01em;color:inherit}
.ng-title .ng-a{display:inline;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .25s}
.ng-title a.ng-a:hover{background-size:100% 1px}
.ng-meta{margin:10px 0 0;font-size:.95em;line-height:1.5;color:var(--ng-muted)}
.ng-meta+.ng-meta{margin-top:6px}
.ng-address{display:flex;gap:6px;align-items:flex-start}
.ng-address::before{content:"";flex:none;width:14px;height:14px;margin-top:.25em;background:currentColor;opacity:.7;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-5.8-6.5-11a6.5 6.5 0 0 1 13 0c0 5.2-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.4'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-5.8-6.5-11a6.5 6.5 0 0 1 13 0c0 5.2-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.4'/%3E%3C/svg%3E") center/contain no-repeat}

.ng-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px}
.ng-body>.ng-meta+.ng-links,.ng-body>.ng-title+.ng-links{margin-top:auto}
.ng-ico{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--ng-line);color:inherit;background:transparent;text-decoration:none;transition:background .15s,color .15s,border-color .15s,transform .15s}
.ng-ico:hover,.ng-ico:focus-visible{background:var(--ng-on);border-color:var(--ng-on);color:var(--ng-on-text);transform:translateY(-1px)}
.ng-ico svg{display:block}
.ng-empty{color:var(--ng-muted);padding:30px 0}
@media (max-width:980px){.ng-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.ng-grid{grid-template-columns:1fr}.ng-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}.ng-chip{flex:none}}
@media (prefers-reduced-motion:reduce){.niou-guides *{transition:none!important}}
