@font-face{font-family:Fraunces;src:url(fonts/fraunces-600.ttf) format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Fraunces;src:url(fonts/fraunces-700.ttf) format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url(fonts/ibm-plex-sans-400.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url(fonts/ibm-plex-sans-500.ttf) format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url(fonts/ibm-plex-sans-600.ttf) format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/ibm-plex-mono-400.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(fonts/ibm-plex-mono-500.ttf) format('truetype');font-weight:500;font-display:swap}
:root{--sb-display:Fraunces,Georgia,serif;--sb-sans:'IBM Plex Sans',Arial,sans-serif;--sb-mono:'IBM Plex Mono',monospace}
body{font-family:var(--sb-sans);font-size:16px;line-height:1.5}
button,input,select,textarea,.field label,#month,.sb-card h3{font-family:var(--sb-sans)!important}
h1,h2,.desktop-brand,.sb-header h1,.sb-auth-brand h1,.report-year-head span{font-family:var(--sb-display)!important;font-weight:700}
.stat small,.report-title,.sb-number,.figure{font-family:var(--sb-mono)!important}
.stat small{text-transform:uppercase;letter-spacing:.05em;font-size:12px!important;line-height:1.45}
.stat strong,.report-year .stat strong,.sb-total-row strong,.sb-tax-total strong,#trends .stat strong{font-family:var(--sb-display)!important;font-weight:700!important;font-size:clamp(22px,2.5vw,32px)!important;line-height:1.2!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
@media(max-width:600px){.stats#stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong,#trends .stat strong{font-size:24px!important}.stat{padding:12px!important}}
/* Keep user invoice documents and their print layout independent of UI typography. */
.cs-invdoc,.cs-invdoc *{font-family:Inter,Arial,sans-serif!important}
.sb-tour-offer{padding:14px;margin:12px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface);display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sb-tour-offer p{margin:0;flex:1 1 220px}
#sb-tour{position:fixed;inset:auto 12px 12px;margin:0 auto;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 16px 50px #0008}
#sb-tour::backdrop{background:transparent}
#sb-tour h2{font-size:26px;margin:8px 0 12px}
#sb-tour p{line-height:1.6}
#sb-tour .tour-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
#sb-tour progress{width:100%;accent-color:var(--green)}
@media(prefers-reduced-motion:no-preference){#sb-tour[open]{animation:sb-tour-in .2s ease-in-out}@keyframes sb-tour-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
