#over25-analyst { --oa-orange:#e84412; --oa-ink:#171512; --oa-avatar-size:128px; --oa-edge:24px; font:14px/1.5 Inter,Manrope,Arial,sans-serif; color:var(--oa-ink); }
#over25-analyst *,#over25-analyst *::before,#over25-analyst *::after { box-sizing:border-box; }
#over25-analyst [hidden] { display:none!important; }
#over25-analyst button,#over25-analyst input { font:inherit; letter-spacing:normal; text-transform:none; margin:0; }
#over25-analyst button { cursor:pointer; border:0; min-height:44px; }
#over25-analyst button:disabled { opacity:.5; cursor:wait; }
#over25-analyst :focus-visible { outline:3px solid #e84412; outline-offset:4px; }
#over25-analyst .oa-launch { position:fixed; z-index:2147483000; right:var(--oa-edge); bottom:calc(28px + env(safe-area-inset-bottom)); display:block; width:var(--oa-avatar-size); height:var(--oa-avatar-size); padding:0; border:0; border-radius:50%; color:#fff; background:transparent; box-shadow:0 10px 35px #0007; transition:transform .18s ease; }
#over25-analyst .oa-launch:hover { transform:translateY(-3px); }
/* Circular display mask only: preserve the supplied pixels and original black rim. */
#over25-analyst .oa-avatar { display:block; width:100%; height:100%; max-width:none; aspect-ratio:1; object-fit:contain; border-radius:50%; clip-path:circle(50%); }
#over25-analyst .oa-avatar-label { position:absolute; bottom:-10px; left:50%; transform:translateX(-50%); padding:5px 12px; border:1px solid #ff8e66; border-radius:999px; background:#181613; color:#fff; font-size:12px; line-height:18px; font-weight:800; white-space:nowrap; box-shadow:0 4px 12px #0005; }
#over25-analyst .oa-whatsapp { position:fixed; z-index:2147483000; right:calc(var(--oa-edge) + var(--oa-avatar-size) + 16px); bottom:calc(24px + env(safe-area-inset-bottom)); display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:#167c3d; color:#fff; box-shadow:0 6px 18px #0004; }
#over25-analyst .oa-whatsapp svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linejoin:round; }
/* Disable the injected generic widget declaratively, even if an old copy ignores the flag. */
body[data-czechai-widget="off"] #czechai-widget { display:none!important; }
#goal-nav .oa-nav { font:inherit; font-weight:800; line-height:1.2; text-transform:uppercase; padding:8px 12px; min-height:44px; margin:0; border:1px solid #ff8e66; border-radius:6px; background:#b92c06; color:#fff; white-space:nowrap; cursor:pointer; }
#goal-nav .oa-nav:focus-visible { outline:3px solid #ff8e66; outline-offset:3px; }
#over25-analyst .oa-shade { position:fixed; z-index:2147483100; inset:0; padding:24px; background:#11100ea6; backdrop-filter:blur(5px); display:flex; align-items:flex-end; justify-content:flex-end; }
#over25-analyst .oa-panel { display:flex; flex-direction:column; width:min(520px,100%); height:min(760px,calc(100dvh - 48px)); max-height:100%; border:1px solid #ffffff50; border-radius:22px; overflow:hidden; background:#f7f5f0; box-shadow:0 24px 100px #0008; text-align:left; }
#over25-analyst .oa-header { position:static; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:20px; background:#181613; color:#fff; border-top:4px solid var(--oa-orange); }
#over25-analyst .oa-identity { display:flex; align-items:center; gap:12px; min-width:0; }
#over25-analyst .oa-header-avatar { width:72px; height:72px; flex:0 0 72px; }
#over25-analyst .oa-header span { color:#ffb391; font-size:10px; font-weight:700; letter-spacing:.12em; }
#over25-analyst .oa-header h2 { color:#fff; font-size:28px; line-height:1.15; margin:7px 0 0; font-weight:800; }
#over25-analyst .oa-close { background:#ffffff15; color:white; border-radius:50%; width:44px; min-width:44px; flex:0 0 44px; height:44px; padding:0; display:grid; place-items:center; line-height:1; font-size:28px; }
#over25-analyst .oa-context { font-size:11px; color:#635c52; margin:0; padding:12px 22px 0; }
#over25-analyst .oa-prompts { display:flex; gap:7px; flex-wrap:wrap; padding:12px 22px; border-bottom:1px solid #ded9d0; }
#over25-analyst .oa-prompts button { padding:8px 12px; background:#fff; color:#4b352c; border:1px solid #d7c9be; border-radius:9px; font-size:12px; font-weight:700; }
#over25-analyst .oa-log { flex:1; min-height:80px; overflow:auto; overscroll-behavior:contain; padding:22px; display:flex; flex-direction:column; gap:14px; }
#over25-analyst .oa-log article { max-width:95%; margin:0; padding:15px 17px; border-radius:13px; background:#fff; border:1px solid #e2ddd4; }
#over25-analyst .oa-log .oa-user { align-self:flex-end; background:#2a2520; border-color:#2a2520; color:#fff; }
#over25-analyst .oa-log strong { display:block; color:#aa300d; font-size:10px; letter-spacing:.08em; }
#over25-analyst .oa-user strong { color:#ffc3a4; }
#over25-analyst .oa-log p { margin:7px 0 0; font-size:14px; line-height:1.65; color:inherit; white-space:pre-wrap; overflow-wrap:anywhere; }
#over25-analyst .oa-login { margin:0 22px 16px; padding:14px; background:#b92c06; color:#fff; border-radius:10px; text-align:center; font-weight:700; }
#over25-analyst .oa-form { padding:16px 22px; border-top:1px solid #ded9d0; background:#fff; }
#over25-analyst .oa-form label { display:block; color:#635c52; font-size:11px; margin:0 0 8px; }
#over25-analyst .oa-form > div { display:flex; gap:8px; }
#over25-analyst input { min-width:0; width:100%; height:48px; color:#171512; background:#f7f5f0; border:1px solid #cfc7bc; border-radius:10px; padding:10px 12px; }
#over25-analyst input::placeholder { color:#71695e; }
#over25-analyst .oa-form button { border-radius:10px; padding:10px 16px; background:#b92c06; color:white; flex-shrink:0; font-weight:700; }
#over25-analyst .oa-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0; padding:0 22px 12px; background:#fff; color:#756c60; font-size:10px; }
#over25-analyst .oa-clear { background:transparent; color:#6f3b27; padding:0; font-size:11px; text-decoration:underline; white-space:nowrap; }
.over25-analyst-open #czechai-widget { visibility:hidden!important; pointer-events:none!important; }
.over25-analyst-open #over25-analyst .oa-launch,.over25-analyst-open #over25-analyst .oa-whatsapp { visibility:hidden; }
@media (max-width:600px) {
  #over25-analyst { --oa-avatar-size:104px; --oa-edge:16px; }
  #over25-analyst .oa-avatar-label { padding:4px 10px; font-size:11px; }
  #over25-analyst .oa-whatsapp { width:50px; height:50px; }
  #over25-analyst .oa-shade { padding:8px; }
  #over25-analyst .oa-panel { width:100%; height:calc(100dvh - 16px); border-radius:16px; }
  #over25-analyst .oa-header { padding:14px; gap:8px; }
  #over25-analyst .oa-identity { gap:10px; }
  #over25-analyst .oa-header-avatar { width:56px; height:56px; flex-basis:56px; }
  #over25-analyst .oa-header h2 { font-size:23px; }
  #over25-analyst .oa-header span { font-size:9px; letter-spacing:.06em; }
  #over25-analyst .oa-log { padding:16px; }
  #over25-analyst input { font-size:16px; }
  #over25-analyst .oa-form { padding:14px; }
  #over25-analyst .oa-foot { padding:0 14px max(10px,env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion:reduce) { #over25-analyst * { scroll-behavior:auto!important; } }
