/* Shared FAB across pages. Scoped to avoid conflicts with existing page CSS. */
#fab-wrapper{position:fixed;bottom:20px;right:20px;z-index:1000;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:10px;font-family:system-ui,sans-serif}
#fab-main-btn{width:52px;height:52px;border-radius:50%;padding:0;border:2px solid #d9a441;background:#182437;cursor:pointer;box-shadow:0 6px 20px #0006;transition:transform .25s}
#fab-main-btn img{width:100%;height:100%;object-fit:cover;border-radius:50%;pointer-events:none}
#fab-wrapper.open #fab-main-btn{transform:rotate(135deg)}
#fab-menu-list{display:none;max-height:min(75vh,650px);overflow:auto;padding:3px;flex-direction:column;align-items:flex-end;gap:8px}
#fab-wrapper.open #fab-menu-list{display:flex}
#fab-main-panel{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
#fab-wrapper .fab-item-btn{font:600 12px system-ui,sans-serif;white-space:nowrap;background:var(--card-bg,#17243a);color:var(--text-main,#fff);border:1px solid var(--border-color,#4b5870);border-radius:20px;padding:9px 14px;cursor:pointer;box-shadow:0 4px 12px #0005}
#fab-wrapper .fab-item-btn:hover{filter:brightness(1.15)}
#fab-wrapper .fab-item-btn:disabled{opacity:.5;cursor:default}
#fab-wrapper .fab-notify-badge{display:none}
@media print{#fab-wrapper{display:none!important}}

/* Compact icon-only FAB actions; labels remain available to screen readers. */
#fab-wrapper .fab-item-btn{width:44px;height:44px;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:50%;font-size:21px;line-height:1;position:relative}
#fab-wrapper .fab-notify-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;border-radius:10px;background:#e74c3c;color:white;font:700 10px system-ui,sans-serif;align-items:center;justify-content:center}
#fab-wrapper .fab-notify-badge[style*="display: block"],#fab-wrapper .fab-notify-badge[style*="display: inline"]{display:inline-flex}
