/* sr-only */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* GLOBAL FOCUS-VISIBLE — keyboard accessibility */
*:focus-visible{outline:2px solid #c9a84c;outline-offset:2px;border-radius:4px}
button:focus-visible,a:focus-visible{outline:2px solid #c9a84c;outline-offset:3px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(201,168,76,0.5);outline-offset:1px}

/* SKIP LINK (accessibility) */
.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;padding:0.75rem 1.25rem;background:#c9a84c;color:#040408;text-decoration:none;font-weight:600;font-size:0.875rem;border-radius:0 0 6px 0}
.skip-link:focus{left:0}

/* NAV BASE */
#site-nav{position:sticky;top:0;z-index:200;background:rgba(4,4,8,0.94);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,0.06)}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 1.5rem;height:62px;display:flex;align-items:center;gap:1.5rem}
.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.nav-logo-svg{height:36px;width:auto}

/* SEARCH */
.nav-search-wrap{flex:1;max-width:400px;position:relative}
.nav-search{width:100%;padding:0.5rem 1rem 0.5rem 2.5rem;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);border-radius:6px;color:var(--text-primary,#f0eee8);font-size:0.85rem;font-family:inherit;outline:none;transition:all 0.2s}
.nav-search::placeholder{color:rgba(240,238,232,0.3)}
.nav-search:focus{background:rgba(255,255,255,0.08);border-color:rgba(201,168,76,0.3);box-shadow:0 0 0 3px rgba(201,168,76,0.06)}
.nav-search-icon{position:absolute;left:0.75rem;top:50%;transform:translateY(-50%);width:14px;height:14px;color:rgba(240,238,232,0.3);pointer-events:none}

/* SEARCH DROPDOWN */
.search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#0c0c14;border:1px solid rgba(255,255,255,0.1);border-radius:8px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,0.6);z-index:300}
.search-dropdown[hidden]{display:none}
.search-result-item{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1rem;text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.04);transition:background 0.15s;cursor:pointer}
.search-result-item:last-child{border-bottom:none}
.search-result-item:hover,.search-result-item[aria-selected="true"]{background:rgba(201,168,76,0.06)}
.sri-icon{width:28px;height:28px;border-radius:4px;object-fit:contain;flex-shrink:0;background:rgba(255,255,255,0.04)}
.sri-icon-placeholder{width:28px;height:28px;border-radius:4px;background:rgba(201,168,76,0.15);display:flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:600;color:var(--gold,#c9a84c);flex-shrink:0;font-family:'DM Mono','Courier New',monospace}
.sri-body{flex:1;min-width:0}
.sri-name{font-size:0.85rem;font-weight:500;color:#f0eee8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sri-meta{font-size:0.72rem;color:rgba(240,238,232,0.4);margin-top:0.1rem}
.sri-price{font-family:'DM Mono','Courier New',monospace;font-size:0.8rem;color:#f0eee8;flex-shrink:0}
.search-result-section{padding:0.4rem 1rem 0.2rem;font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(240,238,232,0.25);font-family:'DM Mono',monospace}
.search-empty{padding:1.25rem 1rem;font-size:0.85rem;color:rgba(240,238,232,0.4);text-align:center}
.search-loading{padding:1rem;display:flex;justify-content:center}
.search-spinner{width:18px;height:18px;border:2px solid rgba(201,168,76,0.2);border-top-color:#c9a84c;border-radius:50%;animation:spin 0.7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* LINKS */
.nav-links{display:flex;align-items:center;gap:0.25rem;flex-shrink:0}
.nav-link{padding:0.45rem 0.75rem;border-radius:6px;color:rgba(240,238,232,0.55);text-decoration:none;font-size:0.875rem;transition:color 0.2s,background 0.2s;background:none;border:none;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center}
.nav-link:hover{color:#f0eee8}
.nav-link.active{color:#f0eee8;background:rgba(255,255,255,0.05)}
.nav-link-cta{border:1px solid rgba(201,168,76,0.25);color:#c9a84c!important;margin-left:0.25rem}
.nav-link-cta:hover{background:rgba(201,168,76,0.1)!important;border-color:rgba(201,168,76,0.4)}
.nav-link-intel{background:rgba(201,168,76,0.08);color:#c9a84c!important;font-weight:500}
.nav-link-intel:hover{background:rgba(201,168,76,0.15)!important}

/* TOOLS DROPDOWN */
.nav-tools-wrap{position:relative}
.nav-tools-btn{cursor:pointer}
.nav-tools-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#0c0c14;border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:0.4rem;box-shadow:0 12px 36px rgba(0,0,0,0.5);z-index:300}
.nav-tools-menu[hidden]{display:none}
.nav-tools-item{display:block;padding:0.55rem 0.75rem;font-size:0.85rem;color:rgba(240,238,232,0.7);text-decoration:none;border-radius:5px;transition:all 0.15s}
.nav-tools-item:hover{background:rgba(201,168,76,0.08);color:#c9a84c}

/* MOBILE SECTION LABEL */
.mobile-section-label{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(240,238,232,0.3);margin-top:0.75rem;padding:0.4rem 0;border-top:1px solid rgba(255,255,255,0.04)}

/* MOBILE */
.nav-mobile-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:6px;border-radius:4px}
.nav-mobile-toggle span{display:block;width:20px;height:1.5px;background:rgba(240,238,232,0.6);transition:all 0.2s}
.nav-mobile{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,0.06);padding:0.75rem 1.5rem 1rem}
.nav-mobile[hidden]{display:none}
.nav-mobile a{padding:0.65rem 0;color:rgba(240,238,232,0.6);text-decoration:none;font-size:0.95rem;border-bottom:1px solid rgba(255,255,255,0.04)}
.nav-mobile a:last-child{border-bottom:none}
.nav-mobile a.active,.nav-mobile a:hover{color:#f0eee8}

@media(max-width:900px){
  .nav-search-wrap{max-width:200px}
  .nav-links{display:none}
  .nav-mobile-toggle{display:flex}
}
@media(max-width:600px){
  .nav-search-wrap{display:none}
}