/* Icon system: one stylesheet for every inline SVG icon (guest + staff). Size via icon(name, px). */
svg.i { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; display: inline-block; vertical-align: -0.2em; }
.sb-ico { display: inline-flex; width: 24px; justify-content: center; flex: none; }
.sb-ico svg.i { width: 22px; height: 22px; }
.bn-item .bn-icon { display: inline-flex; align-items: center; justify-content: center; height: 24px; }
.bn-item .bn-icon svg.i { width: 22px; height: 22px; }
.bn-item.active .bn-icon svg.i, .staff-sidebar-item.active .sb-ico svg.i { stroke-width: 2.2; }
#disputes-ticket-btn, .alerts-bell { color: var(--text, #111); display: inline-flex; align-items: center; justify-content: center; }
#disputes-ticket-btn svg.i, .alerts-bell svg.i { width: 22px; height: 22px; }
.np-av svg.i { width: 18px; height: 18px; }

/* App feel: no text selection / callout / bounce / double-tap zoom, except form fields and .selectable */
html, body { -webkit-touch-callout: none; overscroll-behavior: none; touch-action: manipulation; -webkit-text-size-adjust: 100%; }
body { -webkit-user-select: none; user-select: none; }
input, textarea, select, [contenteditable="true"], .selectable { -webkit-user-select: text; user-select: text; -webkit-touch-callout: default; }
img { -webkit-user-drag: none; }

/* iOS install hint */
#install-ios { position: fixed; left: 0.75rem; right: 0.75rem; bottom: calc(5rem + env(safe-area-inset-bottom, 0px)); z-index: 400; display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 0.75rem 1rem; border-radius: 12px; background: var(--surface, #fff); color: var(--text, #111); border: 1px solid var(--border, #e5e2d9); box-shadow: 0 6px 24px rgba(0,0,0,.18); font-size: 0.9rem; }
#install-ios button { border: 0; border-radius: 8px; padding: 0.45rem 0.9rem; font: inherit; font-weight: 600; background: var(--primary, #175D31); color: #fff; cursor: pointer; }
