/* Jaystool shared typography system · 2026-08-05 */
:root{
  --jt-font-ui: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
  --jt-font-display: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
  --jt-ink: #182033;
  --jt-muted: #697386;
  --jt-title-size: 30px;
  --jt-title-line: 1.16;
  --jt-title-weight: 700;
  --jt-letter-tight: -0.035em;
}
html,body,button,input,select,textarea{font-family:var(--jt-font-ui)!important;}
body{font-weight:400;letter-spacing:-0.008em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
button,input,select,textarea{letter-spacing:-0.006em;}
button,.button,.btn,[role="button"]{font-weight:600;}

/* Shared tool-page title scale */
.subpage-title,
.tool-title,
.page-title,
.hero h1,
header.hero h1,
.topbar h1,
.page-header h1,
.workspace-header h1,
main > h1,
.wrap > h1,
#loginPanel > h1,
#app .toolbar h1{
  margin-top:0;
  font-family:var(--jt-font-display)!important;
  font-size:var(--jt-title-size)!important;
  line-height:var(--jt-title-line)!important;
  font-weight:var(--jt-title-weight)!important;
  letter-spacing:var(--jt-letter-tight)!important;
  color:inherit;
  text-wrap:balance;
}
.subpage-title{margin-bottom:7px!important;}
.subpage-subtitle,
.tool-subtitle,
.page-subtitle,
.hero p,
.page-header p,
.workspace-header p{
  font-family:var(--jt-font-ui)!important;
  font-size:13px;
  line-height:1.55;
  font-weight:400;
  letter-spacing:-0.008em;
  color:var(--jt-muted);
}

/* Stable alignment for common title/header rows */
.subpage-header,.tool-header,.page-header,.hero-inner,.topbar,.workspace-header{
  align-items:center;
}
.subpage-header > div:first-child,.tool-header > div:first-child,.page-header > div:first-child,.hero-inner > div:first-child{
  min-width:0;
}

/* Home/back actions stay visible on pale and dark headers */
a.home-button,a.home-btn,a.back-link,a.back,.home-button,.home-btn,#homeBtn{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 14px;
  border:1px solid rgba(32,47,70,.18)!important;
  border-radius:11px!important;
  background:#f5f8fc!important;
  color:#23324a!important;
  font-family:var(--jt-font-ui)!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-0.01em!important;
  text-decoration:none!important;
  box-shadow:0 5px 15px rgba(36,53,78,.08)!important;
}
a.home-button:hover,a.home-btn:hover,a.back-link:hover,a.back:hover,.home-button:hover,.home-btn:hover,#homeBtn:hover{
  background:#eaf1fa!important;
  border-color:rgba(32,47,70,.28)!important;
}

/* Section headings */
h2,h3,h4,.panel-title,.card-title,.editor-card-title{
  font-family:var(--jt-font-display)!important;
  letter-spacing:-0.02em;
}

@media(max-width:720px){
  :root{--jt-title-size:26px;}
  .subpage-title,.tool-title,.page-title,.hero h1,header.hero h1,.topbar h1,.page-header h1,.workspace-header h1,main > h1,.wrap > h1,#loginPanel > h1,#app .toolbar h1{line-height:1.2!important;}
}
