.iecct-wrap{
    position: fixed;
    right: 16px;
    top: 40%;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform .3s ease, opacity .3s ease;
  }
  
  .iecct-wrap[aria-hidden="true"] {
    opacity: 0;
    transform: translateX(120%);
    pointer-events: none;
  }
  
  /* Khi đang ẩn */
  .iecct-wrap.is-hiding {
    opacity: 0;
    transform: translateX(120%);
  }
  
  /* Khi đang mở lại */
  .iecct-wrap.is-showing {
    opacity: 1;
    transform: translateX(0);
  }

  .iecct-close{
    height: 12px;
    border: none;
    border-radius: 5px;
    background: #fff;
    color: #000;
    cursor: pointer;
    font-size: 14px;
    /* line-height: 11px; */
    /* box-shadow: 0 6px 18px 
 color-mix(in oklab, var(--primary-color) 45%, #000 0%); */
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
    width: 100%;
    text-align: center;
    align-content: center;
    align-items: center;
  }
  .iecct-close:hover{ transform: translateX(-4px) rotate(-4deg); }
  
  /* List */
  .iecct-nav{ display:flex; flex-direction: column; gap: 5px; }
  
  /* Item (giữ nguyên kích thước => các nút khác không xô lệch) */
  .iecct-item{
    position: relative;
    width: 48px; height: 48px;
    border-radius: 5px;
    background: #fff;
    display:flex; align-items:center; justify-content:center;
    text-decoration:none; overflow: visible; /* để label bay ra ngoài */
    box-shadow: 0 6px 18px color-mix(in oklab, var(--primary-color) 45%, #000 0%);
    transition: transform .15s ease, filter .15s ease;
	border: 2px solid var(--primary-color);
  }
  .iecct-item:hover{ transform: translateX(-2px); filter: brightness(1.05); }
  
  .iecct-ico svg{ width:32px; height:32px; fill:#fff; display:block; }
  .iecct-ico img{ width:32px; height:32px; fill:#fff; display:block; }
  .iecct-ico i{  font-size: 20px; fill:#fff; display:block; }
  
  /* Label bay ra bên trái – không thay đổi width item */
  .iecct-label{
    position:absolute;
    right: 56px; top: 50%;
    transform: translate(8px,-50%);
    background: var(--primary-color);
    color:#fff; font-weight:600; font-size:13px;
    padding: 8px 10px;
    border-radius: 5px;
    opacity:0; pointer-events:none;
    white-space: nowrap;
    box-shadow: 0 10px 24px color-mix(in oklab, var(--primary-color) 45%, #000 0%);
    transition: opacity .2s ease, transform .2s ease;
  }
  .iecct-item:hover .iecct-label{ opacity:1; transform: translate(0,-50%); }
  
  /* Reopen floating button */
  .iecct-reopen{
    position: fixed;
    right: 16px; bottom: 50%;
    width: 56px; height: 52px; border-radius: 5px;
    border:none; background: #fff; color:#000; cursor:pointer;
    box-shadow: 0 10px 24px color-mix(in oklab, var(--primary-color) 45%, #000 0%);
    z-index:9999;
    padding: 5px;
  }
  .iecct-reopen svg{ width:30px; height:30px; fill:#fff; }
  
  @media (max-width: 767px){
    .iecct-item {
        width: 40px;
        height: 40px;
    }
    .iecct-wrap{
        right: 8px;
    }
    .iecct-reopen{
        padding: 5px;
        width: 40px;
        right: 8px;
    }
  }
  