/* All naming surfaces are out of document flow and cannot receive pointer events. */
.overlay-control { position:relative; display:flex; flex:0 0 auto; }
.overlay-button { display:flex; align-items:center; gap:6px; height:36px; padding:0 10px; border:1px solid var(--nexa-legacy-color-287); border-radius:8px 0 0 8px; background:var(--nexa-surface); color:var(--nexa-legacy-color-288); font-family:inherit; font-size:12px; font-weight:600; line-height:1.3; cursor:pointer; }
.overlay-button svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.7; }
.overlay-button:hover { border-color:var(--nexa-legacy-color-289); color:var(--nexa-legacy-color-163); background:var(--nexa-legacy-color-222); }
.overlay-button.overlay-active { border-color:var(--nexa-legacy-color-163); color:var(--nexa-surface); background:var(--nexa-legacy-color-115); }
.overlay-menu-button { display:grid; place-items:center; width:28px; height:36px; padding:0; border:1px solid var(--nexa-legacy-color-287); border-left:0; border-radius:0 8px 8px 0; background:var(--nexa-surface); color:var(--nexa-legacy-color-288); cursor:pointer; }
.overlay-menu-button svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.7; }
.overlay-menu-button:hover,.overlay-menu-button[aria-expanded="true"] { color:var(--nexa-legacy-color-163); background:var(--nexa-legacy-color-222); }
.overlay-button:focus-visible,.overlay-menu-button:focus-visible,.overlay-menu input:focus-visible { outline:2px solid var(--nexa-legacy-color-7); outline-offset:3px; }
.overlay-menu { position:absolute; right:0; top:calc(100% + 8px); width:224px; max-width:calc(100vw - 20px); z-index:100; padding:14px; border:1px solid var(--nexa-legacy-color-287); border-radius:10px; background:var(--nexa-surface); box-shadow:0 10px 30px var(--nexa-legacy-color-290); }
.overlay-menu > b { display:block; font-size:12px; color:var(--nexa-legacy-color-291); margin-bottom:10px; }
.overlay-menu label { display:flex; align-items:center; gap:9px; font-size:14px; color:var(--nexa-legacy-color-292); cursor:pointer; }
.overlay-menu input { width:16px; height:16px; margin:0; accent-color:var(--nexa-legacy-color-115); }
.overlay-menu p { margin:10px 0 0; font-size:12px; line-height:1.6; color:var(--nexa-legacy-color-293); }
.naming-overlay { position:fixed; inset:0; width:100vw; height:100vh; z-index:60; overflow:clip; contain:strict; pointer-events:none !important; user-select:none; }
.naming-overlay *, .naming-label { pointer-events:none !important; }
.naming-label { position:fixed; left:0; top:0; display:block; width:max-content; max-width:calc(100vw - 6px); padding:3px 6px; border:1px solid var(--nexa-legacy-color-294); border-radius:4px; background:var(--nexa-legacy-color-298); color:var(--nexa-legacy-color-295); font:500 12px/1.25 system-ui,sans-serif; white-space:nowrap; box-shadow:0 1px 4px var(--nexa-legacy-color-296); }
.naming-label-primary { background:var(--nexa-legacy-color-299); color:var(--nexa-surface); border-color:var(--nexa-legacy-color-297); }
.naming-label-hover { border-color:var(--nexa-legacy-color-115); background:var(--nexa-legacy-color-300); }
.naming-overlay[hidden],.overlay-menu[hidden] { display:none !important; }
@media(max-width:820px) { .overlay-button { padding:0 7px; font-size:12px; gap:4px; }.overlay-button svg { display:none; }.overlay-control { margin-left:0; } }
