/* AI Accountant popup: a wide dialog that opens over any page and hosts the chat. */
.aip { position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(12, 20, 40, .55); opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility 0s linear .25s; }
.aip.is-open { opacity: 1; visibility: visible; transition: opacity .25s ease; }
.aip-card { position: relative; width: min(1280px, 100%); height: min(88vh, 880px); border-radius: 22px; background: #fff; box-shadow: 0 40px 100px -30px rgba(8, 16, 40, .6); transform: translateY(18px) scale(.985); transition: transform .3s cubic-bezier(.22, .8, .24, 1); }
.aip.is-open .aip-card { transform: none; }
.aip-frame { display: block; border-radius: 22px; width: 100%; height: 100%; border: 0; background: #fff; }
.aip-close { position: absolute; top: 12px; right: 32px; z-index: 2; display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 0; border-radius: 12px; background: #fff; box-shadow: 0 0 0 1px #d9dfea; color: #1b2438; cursor: pointer; transition: box-shadow .2s ease; }
.aip-close:hover { box-shadow: 0 0 0 1px #1445c2; color: #1445c2; }
.aip-close svg { width: 18px; height: 18px; }
html.aip-lock { overflow: hidden; }
@media (max-width: 760px) {
  .aip { padding: 0; }
  .aip-card { width: 100%; height: 100%; border-radius: 0; }
  .aip-frame { border-radius: 0; }
  .aip-close { top: 7px; right: 10px; box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) { .aip, .aip-card { transition: none; } }
