.wct-banner { position: fixed; right: 20px; left: auto; bottom: 20px; z-index: 99999; max-width: 420px; }
.wct-banner__inner { background: #ffffff; color: #111827; padding: 12px; border-radius: 10px; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.12); }
.wct-text strong { display: block; font-size: 14px; margin-bottom: 2px; }
.wct-text p { margin: 0; color: #4b5563; font-size: 12px; }
.wct-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.wct-btn { border: 1px solid #065f46; padding: 6px 10px; border-radius: 6px; cursor: pointer; background: transparent; color: #065f46; font-size: 12px; }
.wct-btn:hover { filter: brightness(0.98); }
.wct-btn-primary { background: #2563eb; color: #fff; border-color: #2563eb; }
.wct-btn-outline { background: #fff; }

/* Modal - optimized for performance */
.wct-modal { position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 100000; display: none; align-items: center; justify-content: center; padding: 20px; will-change: transform; }
.wct-modal.wct-modal--open { display: flex !important; }
.wct-modal[hidden] { display: none !important; }
.wct-modal__dialog { background: #fff; width: 100%; max-width: 760px; border-radius: 12px; box-shadow: 0 20px 50px rgba(0,0,0,0.2); overflow: hidden; }
.wct-modal__header { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; border-bottom: 1px solid #e5e7eb; }
.wct-modal__body { padding: 16px 20px; max-height: 65vh; overflow: auto; }
.wct-modal__footer { padding: 16px 20px; display: flex; gap: 10px; border-top: 1px solid #e5e7eb; justify-content: flex-end; }
.wct-modal__close { background: transparent; border: none; font-size: 22px; cursor: pointer; }

.wct-cat { border: 1px solid #e5e7eb; border-radius: 10px; padding: 12px; margin: 12px 0; }
.wct-cat__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.wct-cat__desc { color: #6b7280; font-size: 13px; }
.wct-badge { color: #059669; font-weight: 600; }

/* Switch - optimized for performance */
.wct-switch { position: relative; display: inline-block; width: 44px; height: 24px; }
.wct-switch input{ opacity:0; width:0; height:0; }
.wct-slider { position:absolute; cursor:pointer; inset:0; background:#e5e7eb; border-radius:999px; transition:background-color .2s ease; will-change: background-color; }
.wct-slider:before { content:""; position:absolute; height:18px; width:18px; left:3px; top:3px; background:#fff; border-radius:999px; transition:transform .2s ease; box-shadow: 0 1px 2px rgba(0,0,0,0.2); will-change: transform; }
.wct-switch input:checked + .wct-slider { background:#2563eb; }
.wct-switch input:checked + .wct-slider:before { transform: translateX(20px); }

/* Badge */
.wct-badge-btn { position: fixed; right: 18px; bottom: 18px; width: 42px; height: 42px; border-radius: 50%; background:#166534; color:#fff; display:flex; align-items:center; justify-content:center; border:none; cursor:pointer; box-shadow: 0 8px 20px rgba(22,101,52,0.35); z-index: 99999; }

@media (max-width: 640px){
  .wct-banner{ left: 10px; right: 10px; max-width: none; }
}

/* RTL Support */
html[dir="rtl"] .wct-banner{ left: 20px; right: auto; }
html[dir="rtl"] .wct-badge-btn{ left: 18px; right: auto; }


