/* ===========================================================================
   REDVERSE — ortak bileşen stilleri (Tema 2–10): Odak Kartları · Alan Grafiği · Sohbet Aracı (rcw port)
   Renkler tema değişkenlerinden (--v4-*); her tema kendi web.css'inde şiddet/köşe/yazı tipini ezer.
   =========================================================================== */
/* ---- Focus Cards -------------------------------------------------------------------------------- */
.rv-focus>*{transition:filter .3s ease,transform .3s ease,opacity .3s ease}
.rv-focus.is-hover>*:not(.rv-focus-on){filter:blur(4px) saturate(.85);transform:scale(.98);opacity:.72}
.rv-focus.is-hover>.rv-focus-on{z-index:2}
.rv-focus-title{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}
.rv-focus-on .rv-focus-title{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv-focus>*{transition:none}.rv-focus.is-hover>*:not(.rv-focus-on){filter:none;transform:none;opacity:.6}}
@media (hover:none){.rv-focus.is-hover>*:not(.rv-focus-on){filter:none;transform:none;opacity:1}}
/* ---- Area Chart --------------------------------------------------------------------------------- */
.rv-ac{position:relative;width:100%;min-height:60px}
.rv-ac-svg{display:block;width:100%;height:auto;overflow:visible}
.rv-ac-grid{stroke:var(--v4-line,rgba(255,255,255,.1));stroke-width:1}
.rv-ac-axis{stroke:var(--v4-line-2,rgba(255,255,255,.2));stroke-width:1}
.rv-ac-line{stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.rv-ac-area{opacity:1}
.rv-ac-y,.rv-ac-x,.rv-ac-legend text{fill:var(--v4-muted,#9a95a6);font-size:10.5px;font-family:var(--v4-mono,Consolas,monospace)}
.rv-ac-legend text{font-family:var(--v4-font,"Segoe UI",sans-serif);font-size:11px;fill:var(--v4-text-2,#d8d4e0)}
.rv-ac-cross{stroke:var(--v4-accent-2,#a855f7);stroke-width:1;stroke-dasharray:3 3}
.rv-ac-dot{stroke:var(--v4-bg,#000);stroke-width:1.5}
.rv-ac-tip{position:absolute;z-index:3;pointer-events:none;background:var(--v4-surface-2,#1a1a28);border:1px solid var(--v4-line-2,rgba(255,255,255,.2));border-radius:var(--v4-r-sm,8px);padding:7px 10px;font-size:11.5px;color:var(--v4-text,#fff);box-shadow:0 10px 30px rgba(0,0,0,.4);display:grid;gap:3px;min-width:120px}
.rv-ac-tip b{font-family:var(--v4-mono,Consolas,monospace);font-weight:600;color:var(--v4-muted,#9a95a6);font-size:10.5px}
.rv-ac-tip span{display:flex;align-items:center;gap:6px;white-space:nowrap}
.rv-ac-tip i{width:8px;height:8px;border-radius:2px;flex:none}
.rv-ac-empty{display:grid;justify-items:start;gap:4px;padding:8px 0}
.rv-ac-empty small{color:var(--v4-dim,#777);font-size:11px}
body.rvt-light .rv-ac-tip{background:#fff;color:#17161b}
/* ---- Chat Widget (rcw port, #thChat üstüne) ------------------------------------------------------- */
.rcw-launcher{width:60px!important;height:60px!important;padding:0!important;border-radius:50%!important;display:inline-grid!important;place-items:center;overflow:visible;animation:rcw-slide-in .5s ease forwards}
.rcw-launcher .th-chat-button-icon,.rcw-launcher .th-chat-button-text{display:none!important}
.rcw-launcher .rcw-online{position:absolute;left:-4px;bottom:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;font-size:10px;font-weight:800;display:inline-grid;place-items:center;background:var(--v4-ok,#22c55e);color:#031;box-shadow:0 0 0 2px var(--v4-bg,#000)}
.rcw-launcher .rcw-badge{position:absolute;top:-6px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--v4-bad,#ef4444);color:#fff;font-size:11px;font-weight:800;display:none;place-items:center;box-shadow:0 0 0 2px var(--v4-bg,#000)}
.rcw-launcher .rcw-open-launcher,.rcw-launcher .rcw-close-launcher{display:grid;place-items:center;grid-area:1/1;transition:transform .45s ease,opacity .3s ease}
.rcw-launcher .rcw-close-launcher{opacity:0;transform:rotate(-90deg) scale(.6)}
/* açıkken geniş ekranda launcher gizlenir (pencerenin kendi kapat düğmesi var; referans da dar ekranda gizler); mobilde sabit sağ üst */
.th-chat-widget[data-open="1"] .rcw-launcher{display:none!important}
@media (max-width:800px){.th-chat-widget[data-open="1"] .rcw-launcher{display:inline-grid!important;opacity:1!important;pointer-events:auto!important;transform:none!important}}
.th-chat-widget[data-open="1"] .rcw-launcher .rcw-open-launcher{opacity:0;transform:rotate(90deg) scale(.6)}
.th-chat-widget[data-open="1"] .rcw-launcher .rcw-close-launcher{opacity:1;transform:none}
.th-chat-widget[data-open="1"] .rcw-launcher .rcw-badge,.th-chat-widget[data-open="1"] .rcw-launcher .rcw-online{display:none!important}
@keyframes rcw-slide-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.rcw-conversation-container{transition:opacity .3s ease,transform .3s ease;position:relative}
.rcw-conversation-container.hidden{opacity:0;transform:translateY(10px)}
.rcw-conversation-container.active{opacity:1;transform:translateY(0)}
.rcw-conversation-container.is-resizing{user-select:none}
.rcw-conversation-resizer{position:absolute;left:0;top:0;width:6px;height:100%;cursor:col-resize;z-index:5}
.rcw-conversation-resizer:hover{background:linear-gradient(90deg,var(--v4-accent-2,#a855f7),transparent);opacity:.6}
.rcw-quick-buttons-container{padding:8px 10px 2px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;flex:0 0 auto}
.rcw-quick-buttons-container::-webkit-scrollbar{display:none}
.rcw-quick-buttons{list-style:none;margin:0;padding:0;display:flex;gap:6px}
.rcw-quick-list-button{display:inline-block}
.rcw-quick-button{background:var(--v4-surface-2,rgba(255,255,255,.06));border:1px solid var(--v4-accent-line,rgba(255,255,255,.25));color:var(--v4-text-2,#ddd);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .18s,color .18s,border-color .18s}
.rcw-quick-button:hover,.rcw-quick-button:focus-visible{background:var(--v4-accent,#ff1f4b);color:#fff;border-color:transparent}
.rcw-quick-button:active{transform:translateY(1px)}
.rcw-message.rcw-client{flex-direction:row-reverse}
.rcw-message.rcw-client .th-chat-bubble{border-bottom-right-radius:4px}
.rcw-message.rcw-response .th-chat-bubble{border-bottom-left-radius:4px}
.rcw-message .th-chat-bubble p a{color:var(--v4-accent-2,#a855f7);text-decoration:underline;text-underline-offset:2px;word-break:break-all}
.rcw-message .th-chat-bubble p code{font-family:var(--v4-mono,Consolas,monospace);font-size:.92em;background:rgba(0,0,0,.25);padding:1px 5px;border-radius:4px}
.rcw-message .rcw-message-img{cursor:zoom-in}
.rcw-time{opacity:.7;font-size:10px}
.rcw-full-screen-preview{position:fixed;inset:0;z-index:9500;display:none;place-items:center;background:rgba(0,0,0,.86);backdrop-filter:blur(6px)}
.rcw-full-screen-preview.is-open{display:grid}
.rcw-preview-img{max-width:92vw;max-height:88vh;object-fit:contain;transition:transform .2s ease;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.7)}
.rcw-preview-tools{position:fixed;top:16px;right:16px;display:flex;gap:8px;z-index:2}
.rcw-preview-tools button{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(20,20,30,.8);color:#fff;display:grid;place-items:center;cursor:pointer}
.rcw-preview-tools button:hover{background:var(--v4-accent,#ff1f4b)}
body.rcw-preview-open{overflow:hidden}
@media (max-width:800px){
  .th-chat-widget.rcw-full-screen{right:0!important;bottom:0!important;left:0!important;top:0!important;align-items:stretch!important;gap:0!important}
  .th-chat-widget.rcw-full-screen .th-chat-window{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;border-radius:0!important;border:0!important}
  .th-chat-widget.rcw-full-screen .rcw-launcher{position:fixed;right:14px;top:10px;width:44px!important;height:44px!important;z-index:3}
  .rcw-conversation-resizer{display:none}
}
