
*{box-sizing:border-box;}
html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--chrome-top, 0px) + var(--rail-h, 0px) + 8px);
  scroll-padding-bottom:calc(var(--dock-h, 0px) + 8px);
}
body{
  margin:0;
  padding-bottom:var(--dock-h, 0px);
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:15.5px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
.dash-section, .btn, .chip, summary, #chatInput, .field, .panel{
  scroll-margin-top:4px;
  scroll-margin-bottom:8px;
}
h1,h2,h3,h4{font-family:var(--font-head);margin:0 0 6px;color:var(--ink);font-weight:700;letter-spacing:-0.011em;}
h1{font-weight:800;letter-spacing:-0.028em;}
h2{letter-spacing:-0.018em;}
p{margin:0 0 10px;}
button{font-family:var(--font-body);cursor:pointer;}
a{color:var(--blue);}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:4px;}
.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;
}
.skip-link{
  position:absolute;left:-9999px;top:0;z-index:999;
  background:var(--blue);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;
  font-weight:700;font-size:14px;text-decoration:none;
}
.skip-link:focus{left:0;}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important;}
}
