/* Design tokens copied BY VALUE from ../website-enterprise's "Precision
   Architecture" system — this page is intentionally a separate origin/deploy
   from the main site (own CloudFront, own CSP), so it doesn't share a
   stylesheet, only the visual language. Body background matches the popup
   panel's own bg-inverse-surface exactly (#2d3133) so there's no visible
   seam between the popup chrome and this iframe's content. */
:root{
  --surface:#2d3133;
  --surface-card:rgba(255,255,255,.05);
  --surface-card-hi:rgba(255,255,255,.08);
  --ink:#ffffff;
  --outline:#76777d;
  --outline-dim:rgba(118,119,125,.25);
  --secondary:#0058be;
  --secondary-hi:#2170e4;
  --error:#ff6b6b;
  --inter:"Inter",system-ui,-apple-system,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}

@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/inter-400-latin.woff2") format("woff2");}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/inter-500-latin.woff2") format("woff2");}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/inter-600-latin.woff2") format("woff2");}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/inter-700-latin.woff2") format("woff2");}
@font-face{font-family:"Inter";font-style:normal;font-weight:800;font-display:swap;src:url("/fonts/inter-800-latin.woff2") format("woff2");}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url("/fonts/jetbrains-mono-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215;}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url("/fonts/jetbrains-mono-cyrillic.woff2") format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;}

*{box-sizing:border-box;}
html,body{height:100%;}
body{
  margin:0;
  font-family:var(--inter);
  color:var(--ink);
  background:var(--surface);
  font-size:1rem;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  display:flex;
  justify-content:center;
}

.wrap{
  width:100%;
  max-width:36rem;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  padding:1.25rem 1.25rem 1.75rem;
}

.head{padding-block:.5rem 1rem;}
.brand{font-family:var(--inter);font-weight:800;letter-spacing:-.02em;font-size:1.25rem;color:var(--ink);text-decoration:none;}
.sub{margin:.2rem 0 0;font-family:var(--mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--secondary-hi);}

.panel{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:.6rem;
  padding:1rem;
  background:var(--surface-card);
  border:1px solid var(--outline-dim);
  border-top:2px solid var(--secondary);
  border-radius:.5rem;
  overflow-y:auto;
}

.msg{max-width:85%;padding:.65rem .9rem;line-height:1.45;border-radius:.5rem;}
.msg-bot{align-self:flex-start;background:var(--surface-card-hi);color:var(--ink);}
.msg-bot a{color:var(--secondary-hi);text-decoration:underline;text-underline-offset:2px;}
.msg-user{align-self:flex-end;background:var(--secondary);color:#fff;}

.error{color:var(--error);font-size:.875rem;margin:.5rem 0 0;}

.composer{display:flex;gap:.5rem;margin-top:.85rem;}
.composer input{
  flex:1;
  font-family:var(--inter);
  font-size:1rem;
  padding:.75rem .9rem;
  border:1px solid var(--outline-dim);
  border-radius:.5rem;
  background:var(--surface-card);
  color:var(--ink);
}
.composer input::placeholder{color:var(--outline);}
.composer input:focus-visible{outline:2px solid var(--secondary-hi);outline-offset:1px;}
.composer button{
  font-family:var(--mono);
  font-weight:500;
  font-size:.8125rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:.75rem 1.1rem;
  border-radius:.5rem;
  background:var(--secondary);
  color:#fff;
  border:none;
  cursor:pointer;
  transition:background-color .2s ease;
}
.composer button:hover{background:var(--secondary-hi);}
.composer button:disabled{opacity:.5;cursor:default;}

.foot{margin:1rem 0 0;font-size:.8125rem;text-align:center;color:var(--outline);}
.foot a{color:var(--secondary-hi);}

.legend{margin:.5rem 0 0;font-family:var(--mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;text-align:center;color:var(--outline);}
.legend a{color:var(--outline);text-decoration:none;}
.legend a:hover{color:var(--secondary-hi);}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
