/* ============================================================
   Telos — base styles
   Reset, document defaults, and the structural helper classes
   the markup relies on (sc-host / sc-interp / sc-placeholder / tsc).
   Fonts (Manrope, Newsreader, JetBrains Mono) are defined in fonts.css.
   ============================================================ */

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#0D1512;
  font-family:'Manrope',system-ui,sans-serif;
  color:#E9F0EA;
  -webkit-font-smoothing:antialiased;
  letter-spacing:-.01em;
}
a{color:#6FC6AC;text-decoration:none}
a:hover{color:#8fdcc4}
::selection{background:#2C7A66;color:#fff}

/* keyframes referenced by inline styles in the markup */
@keyframes tlsGlow{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(0,-24px) scale(1.06)}}
@keyframes teFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes teScale{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}

/* the design ships full-width; keep the root fluid */
#dc-root, #dc-root > .sc-host{height:auto}

/* The design's outer wrapper sets overflow-x:hidden (to clip off-canvas
   glows). Per CSS spec that silently promotes overflow-y to `auto`, making
   the wrapper a nested scroll container. Use `clip` instead so horizontal
   bleed is still hidden but the window stays the sole vertical scroller. */
#dc-root [data-dc-tpl="6"]{overflow-x:clip !important;overflow-y:visible !important}

/* inline-text wrapper emitted around every bound string — purely structural */
.sc-interp{}

/* hidden-scrollbar horizontal strips (device carousels, chip rows) */
.tsc::-webkit-scrollbar{display:none}
.tsc{scrollbar-width:none}

/* thin scrollbar inside the embedded Employer Dashboard (business section) */
.esc::-webkit-scrollbar{width:9px}
.esc::-webkit-scrollbar-thumb{background:rgba(255,255,255,.10);border-radius:6px}

/* dashed "content to be supplied" placeholders used in a few spots
   (e.g. clinical board names, business figures) */
.sc-placeholder{
  background:color-mix(in srgb,currentColor 8%,transparent);
  border:1px solid color-mix(in srgb,currentColor 50%,transparent);
  border-radius:2px;box-sizing:border-box;overflow:hidden;
}
.sc-placeholder-error{
  padding:4px 8px;font:11px/1.4 ui-monospace,monospace;
  color:color-mix(in srgb,currentColor 70%,transparent);word-break:break-word;
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{animation:none !important}
}

/* print: flatten fixed heights and heavy effects */
@media print{
  @page{margin:.5cm}
  figure,table{break-inside:avoid}
  #dc-root,#dc-root > .sc-host{height:auto}
  *,*::before,*::after{
    print-color-adjust:exact;-webkit-print-color-adjust:exact;
    backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  }
}
