/* Suche: Nav-Button und Overlay. Tokens kommen aus der jeweiligen Seite (:root). */
.navsearch{order:2;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-left:clamp(.6rem,1.5vw,1.25rem);background:none;border:1px solid transparent;border-radius:100px;color:var(--ink-soft);cursor:pointer;transition:color .25s,border-color .25s,background .25s}
.navsearch:hover,.navsearch:focus-visible{color:var(--accent);border-color:var(--rule);background:var(--surface);outline:none}
#rgnav .navlinks{order:1;margin-left:auto}
#rgnav .navtoggle{order:3}
@media (max-width:900px){#rgnav #navlinks{margin-left:0}.navsearch{margin-left:auto;margin-right:.25rem}}
/* Rechtsseiten (ohne Burger-Menü): zwischen 700 und 900 px reicht der Platz nicht, darunter sind die Links ohnehin ausgeblendet */
@media (max-width:900px){#rgnav:not(:has(#navlinks)) .navsearch{display:none}}
@media (max-width:700px){#rgnav:not(:has(#navlinks)) .navsearch{display:inline-flex}}

.rgs{position:fixed;inset:0;z-index:400;display:none;align-items:flex-start;justify-content:center;padding:clamp(4.5rem,12vh,9rem) 1rem 1rem;background:color-mix(in srgb,var(--ink) 28%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.rgs.open{display:flex}
.rgs-panel{width:min(680px,100%);max-height:min(72vh,640px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--rule);border-radius:18px;box-shadow:0 40px 90px -30px rgba(0,0,0,.45);overflow:hidden;animation:rgs-in .22s cubic-bezier(.2,.7,.2,1)}
@keyframes rgs-in{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}
.rgs-field{display:flex;align-items:center;gap:.8rem;padding:.9rem 1.15rem;border-bottom:1px solid var(--rule)}
.rgs-field svg{flex:none;color:var(--ink-muted)}
.rgs-field input{flex:1;min-width:0;border:none;background:none;font-family:var(--ui);font-size:1.05rem;color:var(--ink);outline:none}
.rgs-field input::placeholder{color:var(--ink-muted)}
.rgs-field input::-webkit-search-cancel-button,.rgs-field input::-webkit-search-decoration{-webkit-appearance:none;display:none}
.rgs-esc{flex:none;font-family:var(--ui);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--rule);border-radius:6px;padding:.2rem .45rem;background:none;cursor:pointer}
.rgs-esc:hover{color:var(--accent);border-color:var(--accent)}
.rgs-list{overflow-y:auto;overscroll-behavior:contain;padding:.5rem}
.rgs-hint,.rgs-empty{padding:1.4rem 1rem;font-size:.86rem;color:var(--ink-muted);text-align:center}
.rgs-hint strong{color:var(--ink-soft);font-weight:500}
.rgs-item{display:block;padding:.75rem .85rem;border-radius:10px;text-decoration:none;color:var(--ink);transition:background .15s}
.rgs-item:hover,.rgs-item.is-active{background:var(--accent-pale)}
.rgs-kind{display:flex;align-items:center;gap:.5rem;white-space:nowrap;min-width:0;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:500;margin-bottom:.2rem}
.rgs-kind span{min-width:0;color:var(--ink-muted);letter-spacing:.01em;text-transform:none;font-weight:400;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rgs-title{font-family:var(--display);font-size:1.08rem;line-height:1.25;color:var(--ink)}
.rgs-snip{font-size:.82rem;line-height:1.5;color:var(--ink-soft);margin-top:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rgs mark{background:none;color:var(--accent);font-weight:500}
.rgs-foot{display:flex;gap:1.2rem;padding:.6rem 1.15rem;border-top:1px solid var(--rule);font-size:.7rem;color:var(--ink-muted)}
.rgs-foot kbd{font-family:var(--ui);font-size:.66rem;border:1px solid var(--rule);border-radius:4px;padding:0 .3rem;margin-right:.3rem;color:var(--ink-soft)}
body.rgs-lock{overflow:hidden}
@media (max-width:600px){.rgs{padding:.75rem}.rgs-panel{max-height:calc(100vh - 1.5rem);max-height:calc(100dvh - 1.5rem)}.rgs-foot{display:none}}
@media (prefers-reduced-motion:reduce){.rgs-panel{animation:none}}
