/* ============================================================
   RC UI 3.0 — LEFT RAIL FINAL OWNER
   ============================================================ */

body.rc-editor-open #rc-editor-modal.rcsd-device-tablet{
    --rc-left-rail-width:72px;
    --rc-left-rail-item-height:56px;
    --rc-left-rail-icon-box:32px;
    --rc-left-rail-gap:6px;
    --rc-left-rail-padding-block:10px;
    --rc-left-rail-item-gap:4px;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar{
    position:absolute;
    inset:0 auto 0 0;
    z-index:40;
    box-sizing:border-box;
    width:var(--rc-left-rail-width) !important;
    min-width:var(--rc-left-rail-width) !important;
    max-width:var(--rc-left-rail-width) !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:var(--rc-left-rail-gap) !important;
    padding:var(--rc-left-rail-padding-block) 6px !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    border:0 !important;
    border-right:1px solid rgba(255,255,255,.07) !important;
    background:var(--rc-bg-sidebar) !important;
    color:#d6dde6 !important;
    scrollbar-width:thin;
    align-self:auto;
    height:auto !important;
    min-height:0;
    max-height:none !important;
    margin-bottom:0 !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar > button:not(.rc-has-lucide-icon){
    display:none !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon{
    flex:0 0 var(--rc-left-rail-item-height) !important;
    width:calc(100% - 12px) !important;
    min-width:0 !important;
    max-width:none !important;
    height:var(--rc-left-rail-item-height) !important;
    min-height:var(--rc-left-rail-item-height) !important;
    margin-left:0 !important;
    margin-right:0 !important;
    display:grid !important;
    grid-template-rows:var(--rc-left-rail-icon-box) 14px !important;
    place-items:center !important;
    align-content:center !important;
    gap:var(--rc-left-rail-item-gap) !important;
    padding:3px 2px !important;
    border:1px solid transparent !important;
    border-radius:var(--rc-radius-md) !important;
    background:transparent !important;
    color:#aeb8c5 !important;
    box-shadow:none !important;
    font-size:10px !important;
    font-weight:650 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    transform:none !important;
    transition:background var(--rc-transition-fast), color var(--rc-transition-fast), border-color var(--rc-transition-fast) !important;
}

body.rc-editor-open #rc-editor-modal .rc-sidebar :is(#rc-open-templates, #rc-add-text, #rc-add-image, #rc-open-image-library, #rc-open-elements, #rc-open-qr, #rc-open-objects){
    order:var(--rc-left-rail-order) !important;
}

body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-open-templates{--rc-left-rail-order:1;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-add-text{--rc-left-rail-order:2;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-add-image{--rc-left-rail-order:3;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-open-image-library{--rc-left-rail-order:4;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-open-elements{--rc-left-rail-order:5;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-open-qr{--rc-left-rail-order:6;}
body.rc-editor-open #rc-editor-modal .rc-sidebar #rc-open-objects{--rc-left-rail-order:7;}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar #rc-open-objects{
    margin-top:auto !important;
    position:relative !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar #rc-open-objects::after{
    content:"";
    position:absolute;
    left:5px;
    right:5px;
    top:-8px;
    height:1px;
    background:rgba(255,255,255,.08);
    pointer-events:none;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon::before{
    display:none !important;
    content:none !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon > .rc-icon{
    display:block;
    position:static;
    inset:auto;
    margin:0;
    transform:none;
    grid-row:1 !important;
    width:var(--rc-left-rail-icon-box) !important;
    height:var(--rc-left-rail-icon-box) !important;
    padding:8px !important;
    box-sizing:border-box !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:var(--rc-radius-md) !important;
    background:rgba(255,255,255,.06) !important;
    color:#e8edf3 !important;
}

body.rc-editor-open.rcsd-signature-ui #rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(:hover, :focus-visible),
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(:hover, :focus-visible){
    --rc-left-rail-state-icon:#dbe7f3;
    border-color:rgba(96,165,250,.22) !important;
    background:rgba(255,255,255,.045) !important;
    color:#dbe7f3 !important;
    box-shadow:none !important;
    filter:none !important;
    transform:none !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:focus-visible{
    outline:2px solid var(--rc-control-focus-ring) !important;
    outline-offset:-2px !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(.active, .is-active),
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet):has(#rc-template-modal.active) .rc-sidebar #rc-open-templates,
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet):has(#rc-image-library-modal.active) .rc-sidebar #rc-open-image-library,
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet):has(#rc-elements-modal.active) .rc-sidebar #rc-open-elements,
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet):has(#rc-qr-modal.active) .rc-sidebar #rc-open-qr{
    --rc-left-rail-state-icon:#dcecff;
    border-color:rgba(96,165,250,.5) !important;
    background:rgba(37,99,235,.22) !important;
    color:#f2f7fc !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:disabled{
    border-color:transparent !important;
    background:transparent !important;
    color:var(--rc-text-disabled) !important;
    opacity:.55 !important;
    cursor:not-allowed !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(.active, .is-active) > .rc-icon,
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(:hover, :focus-visible) > .rc-icon{
    border-color:rgba(255,255,255,.16) !important;
    color:var(--rc-left-rail-state-icon, #dbe7f3) !important;
}

body.rc-editor-open.rcsd-signature-ui #rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(:hover, :focus-visible) > .rc-icon,
body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(:hover, :focus-visible) > .rc-icon{
    background:rgba(255,255,255,.09) !important;
    color:#dbe7f3 !important;
}

body.rc-editor-open #rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet) .rc-sidebar button.rc-has-lucide-icon:is(.active, .is-active) > .rc-icon{
    background:rgba(255,255,255,.14) !important;
}

body.rc-editor-open #rc-editor-modal.rcsd-device-mobile .rc-sidebar{
    background:var(--rc-bg-sidebar) !important;
    color:#d6dde6 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    margin-bottom:0 !important;
}

body.rc-editor-open #rc-editor-modal.rcsd-device-mobile .rc-sidebar #rc-open-objects.rc-has-lucide-icon{
    display:flex !important;
    width:100% !important;
    min-width:0 !important;
    height:54px !important;
    min-height:54px !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:3px !important;
    padding:4px 2px !important;
    border:0 !important;
    border-radius:11px !important;
    background:#fff !important;
    color:#334155 !important;
    box-shadow:none !important;
    font-size:9px !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
}

/* ============================================================
   RC UI 3.0 — LEFT RAIL INTERACTION CONTRACT FINAL

   Contrato:
   - todos os itens clicáveis usam pointer;
   - hover não cria superfície branca no botão;
   - hover atua principalmente sobre a caixa do ícone;
   - estado ativo permanece distinto do hover;
   - Objetos mantém a mesma linguagem visual dos demais itens;
   - Objetos continua ancorado no final do rail.
   ============================================================ */

/* RC UI 3.0 — LEFT RAIL INTERACTION CONTRACT FINAL */

body.rc-editor-open.rcsd-signature-ui
#rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled),
body.rc-editor-open
#rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled){
    cursor:pointer !important;
}

/*
 * Hover do BOTÃO:
 * a superfície principal permanece transparente.
 * O feedback visual será concentrado na caixa do ícone.
 */
body.rc-editor-open.rcsd-signature-ui
#rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled):hover,
body.rc-editor-open
#rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled):hover{
    background:transparent !important;
    border-color:transparent !important;
    color:#c7d2df !important;
    box-shadow:none !important;
    filter:none !important;
    transform:none !important;
}

/*
 * Hover da CAIXA DO ÍCONE:
 * realce discreto e uniforme para os sete itens.
 */
body.rc-editor-open.rcsd-signature-ui
#rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled):hover > .rc-icon,
body.rc-editor-open
#rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:not(:disabled):hover > .rc-icon{
    background:rgba(255,255,255,.09) !important;
    border-color:rgba(96,165,250,.28) !important;
    color:#eef4fa !important;
    box-shadow:none !important;
    filter:none !important;
    transform:none !important;
}

/*
 * Focus de teclado continua claramente identificável,
 * sem reutilizar a superfície branca do legado.
 */
body.rc-editor-open.rcsd-signature-ui
#rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:focus-visible,
body.rc-editor-open
#rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > button.rc-has-lucide-icon:focus-visible{
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
}

/*
 * Objetos:
 * permanece estruturalmente no final do rail, mas sua superfície
 * e interação são idênticas às dos demais itens.
 */
body.rc-editor-open.rcsd-signature-ui
#rc-editor-modal.rcsd-experience-shell:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > #rc-open-objects.rc-has-lucide-icon,
body.rc-editor-open
#rc-editor-modal:is(.rcsd-device-desktop, .rcsd-device-tablet)
.rc-sidebar > #rc-open-objects.rc-has-lucide-icon{
    margin-top:auto !important;
    cursor:pointer !important;
}

/* ============================================================
   FIM — LEFT RAIL INTERACTION CONTRACT FINAL
   ============================================================ */
