.fixed-button-stage{position:fixed;right:auto;bottom:0;z-index:35;pointer-events:none;overflow:visible}
.fixed-button{position:absolute;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:calc(100% - 16px);padding:var(--fixed-padding-y) var(--fixed-padding-x);gap:var(--fixed-gap);width:var(--fixed-width);height:var(--fixed-height);border-radius:var(--fixed-radius);background:var(--fixed-background);color:var(--fixed-color);font-size:var(--fixed-font-size);font-weight:700;text-align:center;text-decoration:none;opacity:var(--fixed-opacity);box-shadow:var(--fixed-shadow);pointer-events:auto;overflow:hidden;white-space:normal;line-height:1.2}
.fixed-button:hover{filter:brightness(.94)}
.fixed-button img{display:block;flex:0 1 auto;width:var(--fixed-image-size);height:var(--fixed-image-size);max-width:60%;max-height:100%;object-fit:contain}
.fixed-button.is-image-only{padding:0;gap:0;border-radius:0;background:transparent;box-shadow:none}
.fixed-button.is-image-only img{flex:none;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.fixed-button span{min-width:0;overflow-wrap:anywhere}
.fixed-button[data-horizontal=left]{left:min(var(--fixed-x),max(8px,calc(100% - var(--fixed-width) - 8px)))}
.fixed-button[data-horizontal=right]{right:min(var(--fixed-x),max(8px,calc(100% - var(--fixed-width) - 8px)))}
.fixed-button[data-horizontal=center]{left:50%;transform:translateX(-50%)}
.fixed-button[data-vertical=top]{top:min(var(--fixed-y),max(0px,calc(100% - var(--fixed-height))))}
.fixed-button[data-vertical=bottom]{bottom:min(var(--fixed-y),max(0px,calc(100% - var(--fixed-height))))}
.fixed-button[data-vertical=center]{top:50%;transform:translateY(-50%)}
.fixed-button[data-horizontal=center][data-vertical=center]{transform:translate(-50%,-50%)}
.fixed-button-stage.is-editor .fixed-button{outline:2px solid transparent;outline-offset:2px;cursor:pointer}
.fixed-button-stage.is-editor .fixed-button:hover,.fixed-button-stage.is-editor .fixed-button:focus-visible{outline-color:#facc15}
.fixed-buttons-dialog{width:min(650px,calc(100% - 24px));max-height:92dvh;overflow:auto;color:#202020}
.fixed-buttons-dialog h2{margin-bottom:8px}
.fixed-buttons-dialog .fixed-buttons-list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.fixed-buttons-dialog .fixed-buttons-list button[aria-pressed=true]{background:var(--vd-tech-soft,#facc15);color:var(--vd-tech-ink,#171717);border-color:var(--vd-tech-line,#b68c00)}
.fixed-buttons-dialog .fixed-buttons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.fixed-buttons-dialog .fixed-buttons-grid .property-field{margin:10px 0}
.fixed-buttons-dialog .fixed-buttons-grid .wide{grid-column:1/-1}
.fixed-buttons-dialog .fixed-buttons-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px}
.fixed-buttons-dialog .fixed-image-choices{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px;max-height:120px;overflow:auto}
.fixed-buttons-dialog .fixed-image-choices button{display:inline-flex;align-items:center;gap:6px;max-width:180px}
.fixed-buttons-dialog .fixed-image-choices img{width:28px;height:28px;object-fit:contain}
.fixed-buttons-dialog .fixed-buttons-status{font-size:12px;min-height:20px}
@media(max-width:560px){.fixed-buttons-dialog .fixed-buttons-grid{grid-template-columns:1fr}.fixed-buttons-dialog .fixed-buttons-grid .wide{grid-column:auto}}
