:root { --ofk-live-level: .12; }
.ofk-live-launch {
  position: fixed; right: 18px; bottom: calc(156px + env(safe-area-inset-bottom)); z-index: 82;
  display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 15px;
  border: 1px solid rgba(255,255,255,.17); border-radius: 999px; cursor: pointer;
  color: #fff; background: linear-gradient(135deg,#12a986,#087f6c); box-shadow: 0 14px 38px rgba(7,139,112,.3);
  font: 800 12px/1 Inter,system-ui,sans-serif; letter-spacing: .02em; transition: transform .18s ease,box-shadow .18s ease;
}
.ofk-live-launch:hover { transform: translateY(-3px); box-shadow: 0 18px 46px rgba(7,139,112,.42); }
.ofk-live-launch__dot { width: 9px; height: 9px; border-radius: 50%; background: #8fffe4; box-shadow: 0 0 0 5px rgba(143,255,228,.12); animation: ofkLivePulse 1.8s ease-in-out infinite; }
.ofk-live-shell { position: fixed; inset: 0; z-index: 9998; display: grid; place-items: center; padding: 18px; background: rgba(4,6,10,.72); backdrop-filter: blur(18px); opacity: 0; pointer-events: none; transition: opacity .22s ease; }
.ofk-live-shell[data-open="true"] { opacity: 1; pointer-events: auto; }
.ofk-live-panel { position: relative; width: min(1040px,100%); height: min(760px,calc(100dvh - 36px)); overflow: hidden; display: grid; grid-template-rows: auto 1fr auto; color: #f6f8f7; border: 1px solid rgba(255,255,255,.12); border-radius: 30px; background: radial-gradient(circle at 50% 35%,rgba(18,177,142,.16),transparent 35%),radial-gradient(circle at 5% 0%,rgba(232,96,12,.12),transparent 28%),#0b0e14; box-shadow: 0 30px 100px rgba(0,0,0,.58); transform: translateY(18px) scale(.985); transition: transform .25s ease; }
.ofk-live-shell[data-open="true"] .ofk-live-panel { transform: none; }
.ofk-live-head { min-height: 72px; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid rgba(255,255,255,.08); }
.ofk-live-brand { display:flex; align-items:center; gap:11px; min-width:0; }
.ofk-live-logo { width:38px; height:38px; object-fit:contain; filter:drop-shadow(0 6px 15px rgba(232,96,12,.25)); }
.ofk-live-brand strong { display:block; font:700 17px/1.1 'Space Grotesk',sans-serif; }
.ofk-live-brand small { display:flex; align-items:center; gap:6px; margin-top:5px; color:#99a2ad; font:500 11px/1 Inter,sans-serif; }
.ofk-live-status-dot { width:7px; height:7px; border-radius:50%; background:#20d9ae; box-shadow:0 0 10px currentColor; }
.ofk-live-iconbtn { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.1); border-radius:14px; color:#d8dee5; background:rgba(255,255,255,.04); cursor:pointer; font-size:20px; }
.ofk-live-stage { min-height:0; display:grid; grid-template-columns:minmax(0,1fr) 330px; }
.ofk-live-focus { min-width:0; min-height:0; padding:28px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.ofk-live-kicker { color:#77e4ca; font:700 11px/1 Inter,sans-serif; letter-spacing:.16em; text-transform:uppercase; }
.ofk-live-title { margin:12px 0 7px; max-width:650px; font:700 clamp(24px,4vw,42px)/1.08 'Space Grotesk',sans-serif; letter-spacing:-.035em; }
.ofk-live-copy { max-width:630px; margin:0; color:#9ca6b1; font:400 14px/1.6 Inter,sans-serif; }
.ofk-live-orb-wrap { position:relative; width:230px; height:230px; display:grid; place-items:center; margin:25px 0 18px; }
.ofk-live-ring { position:absolute; inset:16px; border:1px solid rgba(91,235,202,.17); border-radius:50%; transform:scale(calc(.92 + var(--ofk-live-level) * .22)); transition:transform .08s linear; }
.ofk-live-ring:nth-child(2) { inset:0; opacity:.42; transform:scale(calc(.88 + var(--ofk-live-level) * .32)); }
.ofk-live-orb { position:relative; width:142px; height:142px; border:0; border-radius:50%; cursor:pointer; color:#06130f; background:radial-gradient(circle at 35% 28%,#baffef 0,#37d7b2 36%,#0d8f76 72%,#075548 100%); box-shadow:0 0 calc(36px + var(--ofk-live-level) * 42px) rgba(38,218,175,.31),inset 0 -14px 28px rgba(0,46,38,.24); transform:scale(calc(.98 + var(--ofk-live-level) * .08)); transition:transform .08s linear,filter .2s ease; }
.ofk-live-shell[data-state="thinking"] .ofk-live-orb { filter:hue-rotate(28deg); animation:ofkLiveThink 1.7s linear infinite; }
.ofk-live-shell[data-state="speaking"] .ofk-live-orb { background:radial-gradient(circle at 35% 28%,#ffe6c8 0,#ff9f42 36%,#e8600c 72%,#7b2b04 100%); box-shadow:0 0 calc(38px + var(--ofk-live-level) * 46px) rgba(232,96,12,.35),inset 0 -14px 28px rgba(75,22,0,.28); }
.ofk-live-shell[data-state="listening"] .ofk-live-orb { animation:ofkLiveListening 1.5s ease-in-out infinite; }
.ofk-live-shell[data-state="error"] .ofk-live-orb,.ofk-live-shell[data-state="offline"] .ofk-live-orb { filter:grayscale(.25) hue-rotate(120deg); }
.ofk-live-bars { height:35px; display:flex; align-items:center; justify-content:center; gap:5px; }
.ofk-live-bars i { display:block; width:4px; height:9px; border-radius:9px; background:#7de5cc; animation:ofkLiveBars .9s ease-in-out infinite; animation-play-state:paused; }
.ofk-live-shell[data-state="listening"] .ofk-live-bars i,.ofk-live-shell[data-state="speaking"] .ofk-live-bars i { animation-play-state:running; }
.ofk-live-bars i:nth-child(2),.ofk-live-bars i:nth-child(6){animation-delay:-.18s}.ofk-live-bars i:nth-child(3),.ofk-live-bars i:nth-child(5){animation-delay:-.35s}.ofk-live-bars i:nth-child(4){animation-delay:-.52s}
.ofk-live-state { min-height:24px; margin-top:2px; color:#e9eeec; font:650 15px/1.4 Inter,sans-serif; }
.ofk-live-interim { min-height:42px; max-width:580px; margin-top:5px; color:#8f9aa6; font:400 13px/1.5 Inter,sans-serif; }
.ofk-live-permission { margin-top:16px; padding:11px 16px; border:0; border-radius:13px; color:#05231c; background:#35d8b2; cursor:pointer; font:750 13px/1 Inter,sans-serif; }
.ofk-live-transcript { min-height:0; padding:18px; border-left:1px solid rgba(255,255,255,.08); background:rgba(4,7,11,.35); display:flex; flex-direction:column; }
.ofk-live-transcript[hidden] { display:none; }
.ofk-live-transcript h3 { margin:0 0 12px; color:#dfe6e3; font:700 13px/1.2 Inter,sans-serif; }
.ofk-live-log { min-height:0; overflow:auto; display:flex; flex-direction:column; gap:10px; scrollbar-width:thin; }
.ofk-live-line { padding:10px 12px; border:1px solid rgba(255,255,255,.07); border-radius:14px; background:rgba(255,255,255,.035); font:400 12px/1.5 Inter,sans-serif; }
.ofk-live-line b { display:block; margin-bottom:4px; color:#6ee2c7; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }.ofk-live-line[data-role="assistant"] b{color:#ffad62}
.ofk-live-empty { margin:auto; color:#717b87; text-align:center; font:400 12px/1.6 Inter,sans-serif; }
.ofk-live-foot { padding:15px 20px calc(15px + env(safe-area-inset-bottom)); display:flex; align-items:center; justify-content:center; gap:10px; border-top:1px solid rgba(255,255,255,.08); background:rgba(5,8,13,.7); }
.ofk-live-control { min-width:48px; height:48px; padding:0 15px; display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid rgba(255,255,255,.1); border-radius:16px; color:#dfe5e3; background:rgba(255,255,255,.045); cursor:pointer; font:650 12px/1 Inter,sans-serif; }
.ofk-live-control[aria-pressed="true"] { border-color:rgba(53,216,178,.45); background:rgba(53,216,178,.12); color:#8ff3dc; }
.ofk-live-end { background:#d64040; border-color:#ef6969; color:#fff; }
.ofk-live-settings { position:absolute; right:18px; top:76px; z-index:3; width:min(340px,calc(100% - 36px)); padding:17px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:#121721; box-shadow:0 20px 55px rgba(0,0,0,.5); }
.ofk-live-settings[hidden]{display:none}.ofk-live-settings label{display:block;margin:0 0 7px;color:#aab3bd;font:600 11px/1 Inter,sans-serif}.ofk-live-settings select,.ofk-live-settings input[type="range"]{width:100%;margin-bottom:15px}.ofk-live-settings select{height:42px;padding:0 10px;border:1px solid rgba(255,255,255,.12);border-radius:11px;color:#eef3f1;background:#0a0e15}.ofk-live-privacy{margin:4px 0 0;color:#7f8995;font:400 11px/1.55 Inter,sans-serif}.ofk-live-retry{margin-top:10px;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:8px 11px;color:#fff;background:transparent;cursor:pointer}
body.ofk-live-lock { overflow:hidden; }
@keyframes ofkLivePulse{50%{transform:scale(.72);opacity:.65}}@keyframes ofkLiveThink{to{transform:rotate(360deg)}}@keyframes ofkLiveListening{0%,100%{transform:scale(.98)}50%{transform:scale(1.035)}}@keyframes ofkLiveBars{0%,100%{height:8px;opacity:.55}50%{height:30px;opacity:1}}
@media (max-width:760px){.ofk-live-launch{right:14px;bottom:calc(242px + env(safe-area-inset-bottom))}.ofk-live-shell{padding:0}.ofk-live-panel{width:100%;height:100dvh;border:0;border-radius:0}.ofk-live-head{min-height:66px;padding:12px 14px}.ofk-live-stage{grid-template-columns:1fr}.ofk-live-focus{padding:20px 16px 12px}.ofk-live-orb-wrap{width:190px;height:190px;margin:15px 0 9px}.ofk-live-orb{width:122px;height:122px}.ofk-live-transcript{position:absolute;left:10px;right:10px;bottom:82px;max-height:42%;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(10,14,21,.96);box-shadow:0 18px 45px rgba(0,0,0,.45)}.ofk-live-control span{display:none}.ofk-live-control{padding:0;min-width:48px}.ofk-live-foot{gap:8px}.ofk-live-title{font-size:27px}}
@media (max-width:1024px) and (orientation:landscape){.ofk-live-launch{right:12px;bottom:calc(220px + env(safe-area-inset-bottom))}.ofk-live-shell{padding:8px}.ofk-live-panel{height:calc(100dvh - 16px)}.ofk-live-orb-wrap{width:165px;height:165px;margin:10px 0 4px}.ofk-live-orb{width:108px;height:108px}.ofk-live-focus{padding:14px}.ofk-live-title{font-size:26px}.ofk-live-copy{font-size:12px}.ofk-live-head{min-height:60px;padding:10px 16px}.ofk-live-foot{padding:9px 16px calc(9px + env(safe-area-inset-bottom))}}
@media (prefers-reduced-motion:reduce){.ofk-live-launch__dot,.ofk-live-bars i,.ofk-live-orb{animation:none!important}.ofk-live-shell,.ofk-live-panel{transition:none}}

/* Yazma kutusundaki uc durumlu buton (bos: OFK Live / yazarken: Gonder /
   cevap gelirken: Durdur) bu gorevi ustlendigi icin yuzen OFK Live balonu
   gizlendi. Balon sabit bir yukseklikte konumlandigi icin (mobilde
   bottom:242px) giris cubugunu takip etmiyor ve ekranin ortasinda havada
   kaliyordu. Oge DOM'da BIRAKILIR: composer butonu onu
   .ofk-live-launch.click() ile tetikleyerek diyalogu aciyor. */
.ofk-live-launch{
  position:fixed!important; left:auto!important; right:0!important; bottom:0!important;
  width:1px!important; height:1px!important; min-height:0!important;
  padding:0!important; margin:0!important; border:0!important;
  opacity:0!important; pointer-events:none!important;
  overflow:hidden!important; clip-path:inset(50%)!important;
  box-shadow:none!important; transform:none!important;
}
