/* GMIIE universal navigation — fixed utility bar */ :root { --gmiie-nav-h: 42px; } body.gmiie-nav-active { padding-top: var(--gmiie-nav-h); } #gmiie-nav-root { position: fixed; top: 0; left: 0; right: 0; z-index: 10001; height: var(--gmiie-nav-h); font-family: var(--mono, 'JetBrains Mono', Consolas, monospace); background: var(--band, #1a1a1a); color: var(--band-ink, rgba(255, 255, 255, 0.88)); border-bottom: 2px solid var(--gold, #b8953a); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.28); } .gmiie-nav-inner { max-width: 100%; height: 100%; margin: 0 auto; padding: 0 12px; display: flex; align-items: center; gap: 8px; } .gmiie-nav-btn { display: inline-flex; align-items: center; gap: 4px; font-family: inherit; font-size: 9px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--band-ink-muted, rgba(255, 255, 255, 0.55)); background: transparent; border: 1px solid var(--band-rule, rgba(255, 255, 255, 0.12)); padding: 5px 10px; cursor: pointer; text-decoration: none; white-space: nowrap; transition: color 0.15s, border-color 0.15s, background 0.15s; } .gmiie-nav-btn:hover, .gmiie-nav-btn:focus-visible { color: var(--gold2, #d4af55); border-color: var(--gold-bd, rgba(184, 149, 58, 0.35)); outline: none; } .gmiie-nav-btn.primary { color: var(--gold2, #d4af55); border-color: var(--gold, #b8953a); background: rgba(184, 149, 58, 0.08); } .gmiie-nav-btn .icon { font-size: 11px; line-height: 1; } .gmiie-nav-spacer { flex: 1; min-width: 4px; } .gmiie-nav-label { font-size: 8px; letter-spacing: 0.14em; color: var(--band-ink-faint, rgba(255, 255, 255, 0.35)); text-transform: uppercase; max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: none; } .gmiie-nav-dropdown { position: relative; } .gmiie-nav-dropdown > summary { list-style: none; cursor: pointer; } .gmiie-nav-dropdown > summary::-webkit-details-marker { display: none; } .gmiie-nav-menu { position: absolute; top: calc(100% + 4px); left: 0; min-width: 200px; max-height: min(70vh, 420px); overflow-y: auto; background: var(--surface, var(--deep, #131925)); border: 1px solid var(--rule, #1f2533); box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35); z-index: 10002; padding: 6px 0; } .gmiie-nav-menu a { display: block; padding: 8px 14px; font-size: 9px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ink2, var(--band-ink-muted, #9da3b4)); text-decoration: none; border-bottom: 1px solid var(--rule2, rgba(255, 255, 255, 0.06)); } .gmiie-nav-menu a:hover { color: var(--gold, #d4af37); background: var(--gold-bg, rgba(212, 175, 55, 0.08)); } .gmiie-nav-menu a.active { color: var(--gold2, #d4af55); background: var(--gold-bg, rgba(212, 175, 55, 0.12)); border-left: 2px solid var(--gold, #b8953a); } .gmiie-nav-menu a:last-child { border-bottom: none; } .gmiie-nav-menu .menu-hd { padding: 6px 14px 4px; font-size: 7px; color: var(--ink3, var(--band-ink-faint, #64748b)); letter-spacing: 0.12em; } .gmiie-nav-dropdown:not([open]) .gmiie-nav-menu { display: none; } .gmiie-nav-toggle { display: none; align-items: center; justify-content: center; width: 36px; height: 32px; padding: 0; background: transparent; border: 1px solid var(--band-rule, rgba(255, 255, 255, 0.12)); color: var(--band-ink, rgba(255, 255, 255, 0.88)); cursor: pointer; font-size: 16px; line-height: 1; } .gmiie-nav-actions { display: flex; align-items: center; gap: 6px; flex-wrap: nowrap; } .gmiie-nav-actions.collapsed { display: none; } .gmiie-nav-actions.open { display: flex; position: absolute; top: var(--gmiie-nav-h); left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 8px; padding: 12px; background: var(--band, #1a1a1a); border-bottom: 2px solid var(--gold, #b8953a); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3); z-index: 10002; } .gmiie-nav-actions.open .gmiie-nav-btn, .gmiie-nav-actions.open .gmiie-nav-dropdown { width: 100%; } .gmiie-nav-actions.open .gmiie-nav-dropdown > summary.gmiie-nav-btn { width: 100%; } .gmiie-nav-actions.open .gmiie-nav-menu { position: static; max-height: 240px; width: 100%; margin-top: 4px; } @media (min-width: 720px) { .gmiie-nav-inner { padding: 0 24px; gap: 10px; } .gmiie-nav-label { display: block; } .gmiie-nav-toggle { display: none !important; } .gmiie-nav-actions.collapsed { display: flex; } .gmiie-nav-actions.open { position: static; flex-direction: row; padding: 0; background: transparent; border: none; box-shadow: none; } } @media (max-width: 719px) { .gmiie-nav-toggle { display: inline-flex; } .gmiie-nav-actions:not(.open) { display: none; } .gmiie-nav-spacer { display: none; } }