/* ============ Бүгін AI — glass көмекші ============ */
.ai-fab{position:fixed;right:22px;bottom:22px;z-index:60;width:62px;height:62px;border-radius:50%;border:1px solid rgba(255,255,255,.85);cursor:pointer;display:grid;place-items:center;color:var(--ink);
  background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),rgba(212,240,60,.75) 55%,rgba(212,240,60,.95));
  -webkit-backdrop-filter:blur(12px) saturate(170%);backdrop-filter:blur(12px) saturate(170%);
  box-shadow:0 10px 30px rgba(16,38,29,.28),inset 0 1px 0 rgba(255,255,255,.95),inset 0 0 0 1px rgba(16,38,29,.18);transition:transform .25s ease,box-shadow .25s ease,opacity .25s}
.ai-fab:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 16px 36px rgba(16,38,29,.34),inset 0 1px 0 #fff,inset 0 0 0 1px rgba(16,38,29,.25)}
.ai-fab svg{width:28px;height:28px}
.ai-fab::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--lime);opacity:0;animation:aipulse 2.8s ease-out infinite;pointer-events:none}
@keyframes aipulse{0%{transform:scale(.88);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.ai-fab .dot{position:absolute;top:4px;right:4px;width:14px;height:14px;border-radius:50%;background:var(--coral);border:2px solid #fff}
.ai-open .ai-fab{opacity:0;pointer-events:none;transform:scale(.7)}
.ai-tip{position:fixed;right:96px;bottom:36px;z-index:60;background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);border-radius:14px;padding:9px 14px;font:600 .85rem var(--fb);box-shadow:0 8px 24px rgba(16,38,29,.16);animation:in .4s ease both;cursor:pointer}
.ai-tip::after{content:"";position:absolute;right:-6px;top:50%;width:12px;height:12px;background:inherit;border-right:1px solid rgba(255,255,255,.9);border-top:1px solid rgba(255,255,255,.9);transform:translateY(-50%) rotate(45deg)}

.ai-win{position:fixed;right:22px;bottom:22px;z-index:70;width:404px;max-width:calc(100vw - 24px);height:min(660px,calc(100vh - 44px));display:flex;flex-direction:column;overflow:hidden;border-radius:26px;isolation:isolate;
  background:linear-gradient(150deg,rgba(255,255,255,.62),rgba(255,255,255,.28));
  -webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);
  border:1px solid rgba(255,255,255,.8);
  box-shadow:0 30px 80px rgba(16,38,29,.34),0 2px 0 rgba(255,255,255,.7) inset,0 0 0 1px rgba(16,38,29,.12);
  transform-origin:100% 100%;transition:transform .35s cubic-bezier(.2,.9,.3,1.2),opacity .25s ease;transform:scale(.6) translateY(30px);opacity:0;pointer-events:none;visibility:hidden}
.ai-open .ai-win{transform:none;opacity:1;pointer-events:auto;visibility:visible}
.ai-win::before,.ai-win::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(40px);pointer-events:none}
.ai-win::before{width:260px;height:260px;right:-70px;top:-60px;background:rgba(212,240,60,.75)}
.ai-win::after{width:300px;height:300px;left:-110px;bottom:-90px;background:rgba(31,77,58,.45)}

.ai-head{display:flex;align-items:center;gap:12px;padding:16px 16px 12px 20px;border-bottom:1px solid rgba(16,38,29,.1)}
.ai-ttl{flex:1;min-width:0}.ai-ttl b{display:block;font:800 1.02rem var(--fh);letter-spacing:-.02em}
.ai-ttl span{display:flex;align-items:center;gap:6px;font-size:.76rem;color:var(--mute)}.ai-ttl span::before{content:"";width:7px;height:7px;border-radius:50%;background:#2fbf6a;box-shadow:0 0 0 3px rgba(47,191,106,.2)}
.ai-ib{flex:none;border:0;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.8);color:var(--ink);height:32px;min-width:32px;padding:0 9px;border-radius:10px;cursor:pointer;font:600 .74rem var(--fb);display:grid;place-items:center;transition:background .2s}
.ai-ib:hover{background:#fff}

.ai-log{flex:1;overflow-y:auto;padding:16px 14px 6px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth;overscroll-behavior:contain}
.ai-log::-webkit-scrollbar{width:6px}.ai-log::-webkit-scrollbar-thumb{background:rgba(16,38,29,.2);border-radius:9px}
.ai-m{max-width:88%;padding:10px 14px;border-radius:18px;font-size:.92rem;line-height:1.5;overflow-wrap:anywhere;animation:aimsg .3s ease both}
@keyframes aimsg{from{opacity:0;transform:translateY(8px) scale(.98)}}
.ai-m.b{align-self:flex-start;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.95);border-bottom-left-radius:6px;box-shadow:0 2px 10px rgba(16,38,29,.06)}
.ai-m.u{align-self:flex-end;background:linear-gradient(135deg,#1F4D3A,var(--ink));color:#fff;border-bottom-right-radius:6px;box-shadow:0 4px 14px rgba(16,38,29,.25)}
.ai-m p{margin:0}.ai-m p+p{margin-top:6px}.ai-m strong{font-weight:700}
.ai-m ol,.ai-m ul{margin:8px 0 2px;padding:0;list-style:none;counter-reset:s}
.ai-m ol li{counter-increment:s;position:relative;padding-left:30px;margin:7px 0}
.ai-m ol li::before{content:counter(s);position:absolute;left:0;top:1px;width:21px;height:21px;border-radius:50%;background:var(--lime);color:var(--ink);font:800 .72rem var(--fh);display:grid;place-items:center;border:1px solid rgba(16,38,29,.25)}
.ai-m ul li{padding-left:16px;position:relative;margin:4px 0}.ai-m ul li::before{content:"";position:absolute;left:3px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--green)}
.ai-btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ai-btns button,.ai-chips button{font:600 .8rem var(--fb);color:var(--ink);cursor:pointer;border-radius:99px;padding:7px 13px;background:rgba(255,255,255,.7);border:1px solid rgba(16,38,29,.2);transition:background .2s,transform .2s,color .2s;white-space:nowrap}
.ai-btns button:hover,.ai-chips button:hover{background:var(--ink);color:#fff;transform:translateY(-1px)}
.ai-btns button.pri{background:var(--lime);border-color:rgba(16,38,29,.45)}.ai-btns button.pri:hover{background:var(--ink);color:var(--lime)}
.ai-btns button:disabled{opacity:.45;pointer-events:none}
.ai-typing{align-self:flex-start;display:flex;gap:4px;padding:13px 16px;border-radius:18px;border-bottom-left-radius:6px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.95)}
.ai-typing i{width:7px;height:7px;border-radius:50%;background:var(--green);opacity:.4;animation:aidot 1s infinite}.ai-typing i:nth-child(2){animation-delay:.15s}.ai-typing i:nth-child(3){animation-delay:.3s}
@keyframes aidot{40%{opacity:1;transform:translateY(-3px)}}

.ai-chips{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 4px;scrollbar-width:none}.ai-chips::-webkit-scrollbar{display:none}
.ai-foot{display:flex;gap:8px;padding:8px 12px 14px;align-items:center}
.ai-foot input{flex:1;min-width:0;height:44px;font:400 .95rem var(--fb);color:var(--ink);padding:0 16px;border-radius:15px;border:1px solid rgba(255,255,255,.95);background:rgba(255,255,255,.7);box-shadow:inset 0 1px 3px rgba(16,38,29,.08);outline:0;text-overflow:ellipsis}
.ai-foot input::placeholder{color:var(--mute);opacity:.85}
.ai-foot input:focus{background:#fff;box-shadow:0 0 0 3px rgba(212,240,60,.7),inset 0 1px 3px rgba(16,38,29,.08)}
.ai-send{flex:none;width:44px;height:44px;border-radius:15px;border:1px solid rgba(16,38,29,.3);background:var(--ink);color:var(--lime);cursor:pointer;display:grid;place-items:center;transition:transform .2s,background .2s}
.ai-send:hover{transform:translateY(-2px);background:var(--green)}.ai-send svg{width:20px;height:20px}
.ai-note{text-align:center;font-size:.68rem;color:var(--mute);padding:0 12px 10px;margin-top:-6px}

@media(max-width:560px){
  .ai-win{right:0;bottom:0;left:0;width:100%;max-width:none;height:88vh;height:88dvh;border-radius:26px 26px 0 0}
  .ai-fab{right:14px;bottom:14px;width:58px;height:58px}.ai-tip{right:84px;bottom:28px}
}
@media(prefers-reduced-motion:reduce){.ai-fab::before{animation:none}.ai-win{transition:opacity .2s}}
