/* Ercan Hukuk — WhatsApp başvuru botu */
.ehc-fab { position: fixed; right: max(14px, 2vw); bottom: max(14px, 2vh); z-index: 40; display: flex; flex-direction: row-reverse; align-items: center;
           gap: 0; padding: 8px; border: 1px solid rgba(233, 230, 238, .5); border-radius: 999px; cursor: pointer;
           background: rgba(0, 0, 0, .92); color: #e9e6ee; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
           font: 500 13px/1.25 "Inter", system-ui, sans-serif; box-shadow: 0 4px 18px rgba(0, 0, 0, .28);
           transition: border-color .25s, padding .35s ease, gap .35s ease; }
.ehc-fab:hover, .ehc-fab:focus-visible, .ehc-fab.intro { gap: 12px; padding-left: 20px; border-color: #e9e6ee; outline: none; }
/* simge: marka rengi (koyu erik + gümüş), logodaki Adalet figürü */
.ehc-ico { position: relative; flex: none; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
           background: radial-gradient(circle at 35% 28%, #2b2b2b, #161616 70%); box-shadow: inset 0 0 0 1px rgba(233, 230, 238, .28); }
.ehc-ico svg { width: 27px; height: 27px; display: block; transform: translate(.6px, -.4px); filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .45)); }
.ehc-badge { position: absolute; top: -3px; right: -3px; width: 18px; height: 18px; border-radius: 50%; background: #e9e6ee; display: grid; place-items: center;
             box-shadow: 0 0 0 2px #000000; }
.ehc-badge svg { width: 12px; height: 12px; fill: #000000; }
.ehc-lbl { max-width: 0; opacity: 0; overflow: hidden; white-space: nowrap; text-align: left; transition: max-width .4s ease, opacity .25s ease; }
.ehc-fab:hover .ehc-lbl, .ehc-fab:focus-visible .ehc-lbl, .ehc-fab.intro .ehc-lbl { max-width: 240px; opacity: 1; }
.ehc-fab[hidden] { display: none; }

.ehc-panel { position: fixed; right: max(14px, 2vw); bottom: max(14px, 2vh); z-index: 50; width: min(390px, calc(100vw - 24px));
             height: min(600px, calc(100svh - 28px)); display: none; flex-direction: column; overflow: hidden;
             background: #0b0b0b; color: #e9e6ee; border: 1px solid rgba(233, 230, 238, .28); border-radius: 14px;
             box-shadow: 0 24px 70px rgba(0, 0, 0, .5); font: 400 14px/1.55 "Inter", system-ui, sans-serif; }
.ehc-panel.open { display: flex; animation: ehcIn .28s ease; }
@keyframes ehcIn { from { opacity: 0; transform: translateY(14px) scale(.98); } to { opacity: 1; transform: none; } }
.ehc-head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 16px; border-bottom: 1px solid rgba(233, 230, 238, .14); background: #000000; }
.ehc-head .ehc-ico { width: 38px; height: 38px; }
.ehc-head .ehc-ico svg { width: 23px; height: 23px; }
.ehc-title { flex: 1; min-width: 0; }
.ehc-title strong { display: block; font: 500 12px/1.2 "Cinzel", Georgia, serif; letter-spacing: .14em; text-transform: uppercase; }
.ehc-title span { display: block; margin-top: 4px; font-size: 12px; opacity: .65; }
.ehc-x, .ehc-re { background: none; border: 0; color: #e9e6ee; cursor: pointer; font-size: 12px; opacity: .75; padding: 8px; border-radius: 6px; }
.ehc-x { font-size: 22px; line-height: 1; }
.ehc-x:hover, .ehc-re:hover, .ehc-x:focus-visible, .ehc-re:focus-visible { opacity: 1; background: rgba(233, 230, 238, .1); outline: none; }

.ehc-log { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; scroll-behavior: smooth; }
.ehc-m { max-width: 86%; padding: 10px 13px; border-radius: 12px; white-space: pre-wrap; word-wrap: break-word; animation: ehcIn .25s ease; }
.ehc-m.bot { align-self: flex-start; background: #1c1c1c; border-top-left-radius: 4px; }
.ehc-m.me { align-self: flex-end; background: #e9e6ee; color: #000000; border-top-right-radius: 4px; }
.ehc-m a { color: inherit; }
.ehc-sum { align-self: stretch; max-width: none; background: #141414; border: 1px solid rgba(233, 230, 238, .2); border-radius: 10px; }
.ehc-sum dl { margin: 0; display: grid; grid-template-columns: 96px 1fr; gap: 6px 10px; font-size: 13px; }
.ehc-sum dt { opacity: .62; }
.ehc-sum dd { margin: 0; word-break: break-word; }
.ehc-typing { align-self: flex-start; padding: 12px 14px; border-radius: 12px; background: #1c1c1c; display: flex; gap: 4px; }
.ehc-typing i { width: 6px; height: 6px; border-radius: 50%; background: #e9e6ee; opacity: .45; animation: ehcDot 1s infinite; }
.ehc-typing i:nth-child(2) { animation-delay: .15s; } .ehc-typing i:nth-child(3) { animation-delay: .3s; }
@keyframes ehcDot { 0%, 100% { transform: translateY(0); opacity: .35; } 50% { transform: translateY(-4px); opacity: .9; } }

.ehc-act { padding: 12px 14px 14px; border-top: 1px solid rgba(233, 230, 238, .14); background: #000000; }
.ehc-q { display: flex; flex-wrap: wrap; gap: 8px; }
.ehc-q button { cursor: pointer; background: transparent; color: #e9e6ee; border: 1px solid rgba(233, 230, 238, .45); border-radius: 999px;
                padding: 9px 14px; font: 500 13px/1.2 "Inter", system-ui, sans-serif; transition: background .2s, color .2s; }
.ehc-q button:hover, .ehc-q button:focus-visible { background: #e9e6ee; color: #000000; outline: none; }
.ehc-q button.pri { background: #e9e6ee; color: #000000; }
.ehc-q button.pri:hover, .ehc-q button.pri:focus-visible { background: #fff; }
.ehc-form { display: flex; gap: 8px; align-items: flex-end; }
.ehc-form textarea, .ehc-form input { flex: 1; min-width: 0; resize: none; background: #141414; color: #e9e6ee; border: 1px solid rgba(233, 230, 238, .3);
                                       border-radius: 10px; padding: 10px 12px; font: 400 14px/1.45 "Inter", system-ui, sans-serif; }
.ehc-form textarea { min-height: 84px; }
.ehc-form textarea:focus, .ehc-form input:focus { outline: none; border-color: #e9e6ee; }
.ehc-form button { flex: none; cursor: pointer; background: #e9e6ee; color: #000000; border: 0; border-radius: 10px; padding: 11px 16px; font: 500 13px/1 "Inter", system-ui, sans-serif; }
.ehc-form button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.ehc-err { margin: 0 0 8px; font-size: 12.5px; color: #ffb3bc; }
.ehc-note { margin: 10px 0 0; font-size: 11.5px; opacity: .6; line-height: 1.5; }
.ehc-note a { color: inherit; }

@media (max-width: 520px) {
  .ehc-panel { right: 0; left: 0; top: var(--ehc-top, 0px); bottom: auto; width: 100%; height: var(--ehc-vh, 100dvh);
               max-height: none; border-radius: 0; border: 0; }
  .ehc-log { min-height: 0; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
}
@media (prefers-reduced-motion: reduce) {
  .ehc-fab, .ehc-lbl { transition: none; }
  .ehc-panel.open, .ehc-m { animation: none; }
  .ehc-typing i { animation: none; }
  .ehc-log { scroll-behavior: auto; }
}

/* mobil: yazı alanları 16px (iOS yakınlaştırmayı önler), Gönder düğmesi alt satırda tam genişlik */
@media (max-width: 520px) {
  .ehc-form { flex-direction: column; align-items: stretch; }
  .ehc-form textarea, .ehc-form input { font-size: 16px; width: 100%; }
  .ehc-form textarea { min-height: 96px; }
  .ehc-form button { width: 100%; padding: 15px 16px; font-size: 15px; }
  .ehc-act { padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px)); }
  .ehc-q button { font-size: 15px; padding: 11px 16px; }
}

/* küçük ekranlarda etiket kendiliğinden yana açılmaz; dokununca/odaklanınca açılır */
@media (max-width: 520px) {
  .ehc-fab.intro:not(:hover):not(:focus-visible) { gap: 0; padding-left: 8px; border-color: rgba(233, 230, 238, .5); }
  .ehc-fab.intro:not(:hover):not(:focus-visible) .ehc-lbl { max-width: 0; opacity: 0; }
  .ehc-fab:hover .ehc-lbl, .ehc-fab:focus-visible .ehc-lbl { max-width: min(220px, calc(100vw - 110px)); }
}
