/* Shared ReceiptLab interface. Receipt documents retain their own measured fonts. */
@font-face{font-family:'Receipt UI';src:url('/fonts/Inter-Variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--sans:'Receipt UI','Tally Sans',Arial,sans-serif;--ink:#101828;--muted:#526071;--blue:#007eb5;--deep:#006a99;--sky:#e1f2fc;--wash:#f5f9fc;--line:#e1e7ee;--paper:#fff;--display:var(--sans);--mono:var(--sans);background:#fff;color:var(--ink);font-family:var(--sans)}
body{background:#fff}h1,h2,h3{font-family:var(--sans);font-weight:650;letter-spacing:-.035em}h1{line-height:1.12}h2{line-height:1.24}h3{letter-spacing:-.02em}p{line-height:1.7}
button,input,select,textarea{font-family:var(--sans)}
.container{width:calc(100% - 80px);max-width:1232px}
.header{background:#fff;border-bottom:1px solid #f0f3f6}.nav-inner{min-height:88px;gap:42px}.brand{font-family:var(--sans);font-size:1.6rem;font-weight:750;letter-spacing:-.065em;gap:10px}.brand-period{color:var(--blue)}
.brand-mark{display:flex;flex-direction:column;width:23px;gap:4px;transform:none}.brand-mark i{height:4px;width:23px;border-radius:1px}.brand-mark i:nth-child(2){width:17px}.brand-mark i:nth-child(3){width:11px}
.nav-inner nav{gap:30px}.nav-inner nav a{font-size:.9375rem;font-weight:550;color:#475467}.nav-inner nav a:hover,.nav-inner nav a[aria-current]{color:var(--blue)}
.button{background:var(--blue);border-color:var(--blue);border-radius:999px;color:#fff;font-weight:600;min-height:48px;padding:13px 23px;box-shadow:0 2px 3px #1018280c;white-space:normal;max-width:100%;min-width:0;text-align:center}.button:hover{background:var(--deep);border-color:var(--deep)}.button.secondary{background:#fff;color:#475467;border-color:#cdd5df}.button.secondary:hover{background:#f6f9fc}.nav-cta{font-size:.875rem;min-height:44px;padding:10px 19px}
.text-link,.card-use{color:var(--blue);font-weight:600}.text-link{white-space:normal;max-width:100%;min-width:0}.eyebrow{font-family:var(--sans);font-size:.8125rem;letter-spacing:.025em;font-weight:600;color:var(--blue)}
:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #007eb5;outline-offset:4px}
.section-heading{flex-wrap:wrap}.section-heading>div{min-width:0}.section-heading .text-link{white-space:normal}.section-heading h2{font-size:2.25rem}.section-heading p:not(.eyebrow){font-size:1.0625rem}
.template-grid,.template-grid:not(.featured-grid):not(.related-grid),.template-grid.brand-grid:not(.featured-grid):not(.related-grid){grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 24px}
.template-card{background:var(--sky);border-radius:18px;overflow:hidden;min-width:0;transition:box-shadow .18s,transform .18s}
.template-card:hover{box-shadow:0 10px 24px #16486612;transform:translateY(-3px)}
.template-art,.brand-grid .template-art,.featured-grid .template-art{height:342px;padding:23px 23px 0;border:0;border-radius:0;background:transparent;display:block;width:100%;position:relative}
.template-art img,.template-art canvas,.brand-card .template-art canvas{display:block;width:100%;height:auto;max-width:none;max-height:none;object-fit:contain;object-position:top;box-shadow:0 3px 12px #16384b0a;transition:transform .18s}
.template-art:hover img,.template-art:hover canvas{transform:translateY(-3px)}
.template-art::after{content:'';position:absolute;inset:auto 0 0;height:48px;background:linear-gradient(transparent,var(--sky));pointer-events:none}
.card-caption{padding:12px 20px 17px;text-align:center}.card-category{justify-content:center;color:#516b7c;font-family:var(--sans);font-size:.6875rem;line-height:1.5;margin-bottom:6px;gap:3px}.card-caption h3,.brand-card .card-caption h3{font-size:1.0625rem;font-weight:650;line-height:1.35;min-height:1.45em;letter-spacing:-.02em;margin:0 0 7px}
.card-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}.card-preview{font:500 .75rem/1.4 var(--sans);padding:10px 4px;min-width:44px;min-height:44px;background:transparent;color:#405c70;text-decoration:underline;text-underline-offset:3px}.card-preview:hover{color:var(--blue)}.card-use{font-size:.75rem;min-height:44px;padding:10px 2px;margin:0;gap:7px;display:inline-flex}.brand-card .card-use{display:inline-flex}
.brand-notice{font-family:var(--sans);font-size:.8125rem;line-height:1.65;color:#667085}
.catalog.section{padding-top:64px}.catalog-heading,.brand-catalog .catalog-heading{max-width:900px;text-align:center;margin-bottom:38px}.catalog-heading h1,.brand-catalog .catalog-heading h1{font-size:clamp(2.2rem,4vw,3rem);line-height:1.16;font-weight:650}.catalog-heading>p:last-child{font-size:1.125rem;color:var(--muted)}
.catalog-tools{max-width:1040px;margin-inline:auto;gap:12px}.catalog-tools .search-wrap input,.select-wrap select{border-color:#c7d2df;border-radius:10px;min-height:48px;font-size:.875rem;background:#fff}.filter-row{justify-content:center;margin-top:24px;gap:6px}.filter{font:500 .8125rem/1.45 var(--sans);min-height:44px}.filter.active{background:var(--sky);border-color:#b9deef;color:#006c9e}.catalog-meta{font-family:var(--sans);font-size:.8125rem;margin:30px 0 20px;flex-wrap:wrap;gap:8px 24px;color:#667085}.catalog-bottom{margin-top:44px;padding-top:26px;flex-wrap:wrap}
.detail-grid{gap:64px}.detail-copy h1{font-size:2.75rem;line-height:1.14}.detail-copy h2{font-size:1.1875rem}.detail-copy .lead{font-size:1.0625rem}.detail-art{background:var(--sky);border-radius:20px;padding:32px;gap:22px}.detail-art canvas,.detail-art img{display:block;width:340px;height:auto;max-width:100%;box-shadow:0 5px 18px #18384e10}.detail-art>span{font-size:.8125rem;line-height:1.6;color:#456578}.breadcrumb{font-size:.8125rem;color:#667085;gap:12px}.related-grid{max-width:none;grid-template-columns:repeat(4,minmax(0,1fr))}.format-note{border-color:#dfebf3;background:#f5faff;font-size:.8125rem}
.preview-dialog{border:1px solid #d7e2eb;border-radius:20px;box-shadow:0 20px 80px #0c26352b}.preview-dialog::backdrop{background:#10182880;backdrop-filter:none}.dialog-heading h2{font-size:1.35rem}.dialog-heading .eyebrow{letter-spacing:.025em}.preview-dialog-paper{background:var(--sky)}.dialog-footer{flex-wrap:wrap}.icon-button{border-color:#d1dbe4}.faq-list summary{font-weight:550;font-size:1rem;line-height:1.5;min-height:76px}.faq-list details p{line-height:1.75;color:#526071}.faq-list summary>span{flex-shrink:0}
.prose-page{max-width:960px;padding-block:64px 84px}.prose-page h1{font-size:clamp(2.125rem,4vw,3rem);max-width:860px;margin-bottom:24px}.prose-page h2{font-size:1.6rem;line-height:1.3}.prose-page .lead{font-size:1.1875rem;line-height:1.75}.prose-page p>a:not(.button),.related-guides a{text-decoration:underline;text-underline-offset:4px}.price-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:36px 0 48px}.price-options>section{min-width:0;border:1px solid #dce7ef;border-radius:18px;padding:30px;background:#fff}.price-options>section:first-child{background:#eff8fe;border-color:#baddf1}.price-options h2{font-size:1.75rem;margin:0 0 20px}.price-options .plan-price{color:var(--ink);font:600 2rem/1.8 var(--sans);letter-spacing:-.04em;margin-bottom:16px}.price-options .plan-price span{font-size:.875rem;color:var(--muted);letter-spacing:0}.price-options .eyebrow{font-size:.75rem}.price-options .button{margin-top:10px}
.help-page{max-width:1040px}.help-content h2{font-size:1.8rem}.help-content p{line-height:1.8}.help-nav a{font-size:.8125rem;border-color:#ccdce8}.math-example{background:#f3faff;border-color:#ccdfed}
.footer{background:#0e1726;color:#f2f6fc;border:0;padding-top:48px}.footer-top{flex-wrap:wrap;gap:30px;padding-bottom:35px}.footer-top .brand{font-size:1.5rem}.footer-top p{color:#b8c5d6;font-size:.875rem}.footer-links{gap:4px 28px}.footer-links a{color:#d3deea;font-size:.8125rem}.footer-links a:hover{color:#fff}.footer-bottom{border-color:#293447;color:#aebed0;flex-wrap:wrap;font-size:.75rem;padding-block:23px 28px}
@media(max-width:1150px){.template-grid,.template-grid:not(.featured-grid):not(.related-grid),.template-grid.brand-grid:not(.featured-grid):not(.related-grid){grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.nav-inner{gap:28px}.nav-inner nav{gap:24px}.template-art,.brand-grid .template-art,.featured-grid .template-art{height:355px}}
@media(max-width:900px){.container{width:calc(100% - 48px)}.nav-inner{gap:20px}.nav-inner nav{gap:18px}.brand{font-size:1.4rem}.nav-cta{padding-inline:15px;font-size:.8125rem}.template-grid,.template-grid:not(.featured-grid):not(.related-grid),.template-grid.brand-grid:not(.featured-grid):not(.related-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.template-art,.brand-grid .template-art,.featured-grid .template-art{height:360px;padding-inline:28px}.card-caption{padding-inline:26px}.detail-grid{gap:32px}.detail-copy h1{font-size:2.25rem}.detail-art{padding:24px}.section-heading h2{font-size:2rem}}
@media(max-width:650px){.container{width:calc(100% - 40px)}.nav-inner{padding-block:14px 6px;row-gap:6px;min-height:98px;justify-content:center}.brand{font-size:1.55rem}.nav-inner nav{width:100%;margin:0;justify-content:center;gap:24px}.nav-inner nav a{font-size:.8125rem;min-height:44px}.nav-cta{display:none}.catalog.section{padding-top:38px}.catalog-heading,.brand-catalog .catalog-heading{text-align:center}.catalog-heading h1,.brand-catalog .catalog-heading h1{font-size:2rem}.catalog-heading h1 br{display:none}.catalog-heading>p:last-child{font-size:1rem}.catalog-tools .search-wrap input{font-size:1rem}.select-wrap select{font-size:1rem}.filter-row{gap:3px;justify-content:flex-start}.filter{font-size:.75rem;padding-inline:12px}.catalog-meta{font-size:.75rem}.catalog-meta>span{display:block;font-size:.75rem}.section-heading h2{font-size:1.875rem}.detail-copy h1{font-size:2.125rem}.detail-copy .lead{font-size:1rem}.detail-copy .small-note{font-size:.8125rem}.detail-copy h2{font-size:1.125rem}.detail-art{padding:25px}.breadcrumb{font-size:.75rem}.prose-page{padding-block:40px 56px}.prose-page h1{font-size:2.125rem}.prose-page .lead{font-size:1.0625rem}.price-options{grid-template-columns:minmax(0,1fr);gap:20px}.price-options>section{padding:25px}.footer{padding-top:36px}.footer-top{gap:24px}.footer-links{gap:4px 24px}.footer-bottom{gap:8px}.dialog-heading{gap:12px}.dialog-heading h2{font-size:1.2rem}.faq-list summary{font-size:.9375rem}.faq-list details p{font-size:.9375rem}}
@media(max-width:600px){.template-grid,.template-grid:not(.featured-grid):not(.related-grid),.template-grid.brand-grid:not(.featured-grid):not(.related-grid),.related-grid{grid-template-columns:minmax(0,1fr);gap:24px}.template-card{width:100%;max-width:360px;margin-inline:auto}.template-art,.brand-grid .template-art,.featured-grid .template-art{height:352px;padding:25px 27px 0}.card-caption{padding:12px 25px 20px}.card-caption h3,.brand-card .card-caption h3{font-size:1.125rem}.card-category{font-size:.75rem}.card-use,.card-preview{font-size:.8125rem}.card-actions{justify-content:space-between}.related-grid{max-width:none}}
@media(max-width:359px){.container{width:calc(100% - 32px)}.nav-inner nav{gap:20px}.nav-inner nav a{font-size:.75rem}.template-art,.brand-grid .template-art,.featured-grid .template-art{height:324px;padding-inline:22px}.card-caption{padding-inline:20px}.brand{font-size:1.45rem}.catalog-meta{flex-direction:column;align-items:flex-start}.select-wrap{flex-basis:100%}}
/* Content reflows when the reader increases the default text size. */
.catalog,.prose-page,.help-page,.detail-page{container:reading / inline-size}.detail-copy,.detail-art,.prose-page,.help-page,.catalog-heading,.dialog-heading>div{min-width:0}.detail-copy h1,.prose-page h1,.catalog-heading h1{overflow-wrap:break-word}.catalog-tools .select-wrap{flex:1 1 11rem}.catalog-tools .search-wrap{flex:3 1 20rem}.dialog-heading{align-items:flex-start}.footer-bottom>*{min-width:0}.button,.text-link{overflow-wrap:break-word}
@container reading (max-width:32rem){.detail-grid{display:flex;flex-direction:column-reverse}.price-options{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Practical reading pages: quiet typography and examples with room to read. */
.guide-page { max-width: 980px; padding-block: 36px 72px; }
.guide-page :is(h1,h2,h3), .template-guide :is(h2,h3) { font-family: var(--sans); font-weight: 600; letter-spacing: -.02em; }
.guide-page h1 { max-width: 830px; font-size: clamp(2rem, 4.1vw, 3.2rem); line-height: 1.15; margin-block: 20px; }
.guide-page h2, .template-guide h2 { font-size: 1.75rem; line-height: 1.3; margin-block: 40px 15px; }
.guide-page h3, .template-guide h3 { font-size: 1.17rem; line-height: 1.4; margin-block: 24px 10px; }
.guide-page :is(p,li,dd), .template-guide :is(p,li,dd) { font-size: 1.0625rem; line-height: 1.75; color: var(--muted); }
.guide-page .lead { font-size: 1.2rem; line-height: 1.7; }
.guide-page .guide-byline, .guide-page .guide-meta { font-size: .875rem; line-height: 1.6; color: #667085; }
.guide-body { max-width: 900px; }
.guide-body > p, .guide-body > ul, .guide-body > ol { max-width: 76ch; }
.guide-page a:not(.button), .template-guide a:not(.button) { text-decoration: underline; text-underline-offset: 4px; }
.guide-page .guide-toc { border-block: 1px solid var(--line); margin-block: 30px 40px; padding: 20px 0; }
.guide-toc p { margin: 0 0 10px; font-weight: 600; }
.guide-toc ol { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 40px; margin: 0; padding-left: 23px; }
.guide-page [id], .template-guide [id] { scroll-margin-top: 24px; }
.guide-example { display: grid; grid-template-columns: minmax(0,340px) minmax(0,1fr); align-items: start; gap: 34px; margin-block: 30px 44px; }
.guide-figure { min-width: 0; margin: 0; }
.guide-receipt-image { display: block; max-width: 340px; margin-inline: auto; }
.guide-figure img { display: block; max-width: 100%; height: auto; width: 100%; box-shadow: 0 5px 19px #32261812; }
.guide-figure figcaption { font-size: .875rem; line-height: 1.6; color: var(--muted); margin: 15px 0; }
.guide-figure:not(:has(.guide-receipt-image)) { margin-block: 26px; }
.guide-example h2, .guide-example h3 { margin-top: 0; }
.guide-fields { margin-top: 0; }
.guide-fields dt { font-weight: 600; margin-top: 18px; }
.guide-fields dd { margin: 4px 0 14px; }
.guide-downloads, .guide-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-block: 18px 25px; }
.guide-downloads a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9375rem; }
.guide-note { border-left: 3px solid #acd7ed; padding: 5px 0 5px 18px; margin-block: 23px; }
.guide-page .guide-note, .template-guide .guide-note { font-size: .9375rem; }
.guide-table-wrap { max-width: 100%; min-width: 0; margin-block: 24px; overflow-x: auto; }
.guide-table-wrap table { width: 100%; border-collapse: collapse; font-size: .9375rem; line-height: 1.6; }
.guide-table-wrap caption { text-align: left; font-size: .875rem; color: var(--muted); padding: 0 0 14px; }
.guide-table-wrap th, .guide-table-wrap td { border-bottom: 1px solid var(--line); padding: 13px 12px; text-align: left; vertical-align: top; }
.guide-table-wrap thead th { border-top: 1px solid var(--line); background: #f0f7fc; font-weight: 600; }
.guide-table-wrap :is(td,th) { overflow-wrap: normal; word-break: normal; }
.guide-table-wrap:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.guide-table-wrap tbody th { font-weight: 400; }
.guide-table-wrap tfoot tr:last-child { font-weight: 600; }
.guide-table-wrap :is(td,th):last-child { text-align: right; }
.guide-comparison { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; align-items: start; margin-block: 28px 40px; }
.guide-comparison-two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.guide-checklist { padding-left: 23px; }
.guide-checklist li { padding-left: 5px; margin-bottom: 12px; }
.guide-next, .related-guides { border-top: 1px solid var(--line); margin-top: 48px; padding-top: 12px; }
.guide-next a { display: block; padding-block: 10px; }
.guide-index { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 38px; }
.guide-index article { padding-block: 23px; border-top: 1px solid var(--line); }
.guide-index h2 { margin-top: 0; font-size: 1.4rem; }
.template-guide { border-top: 1px solid var(--line); margin-top: 55px; padding-top: 36px; }
.template-guide-intro { max-width: 760px; }
.template-guide-intro h2 { margin-top: 12px; font-size: 2.1rem; }
.template-guide-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; padding-left: 23px; margin: 30px 0 45px; }
.template-guide-steps li { padding-left: 5px; }
.template-guide-steps h3 { margin-top: 0; }
.template-guide-worked { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.15fr); gap: 48px; align-items: start; }
.template-guide-worked h2 { margin-top: 20px; }
.template-guide-answers { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 48px; }
@media (max-width: 760px) {
  .guide-page { padding-top: 24px; }
  .guide-example, .guide-comparison, .guide-toc ol, .guide-index,
  .template-guide-steps, .template-guide-worked, .template-guide-answers { grid-template-columns: minmax(0,1fr); }
  .guide-example { gap: 23px; }
  .guide-comparison { gap: 32px; }
  .guide-comparison .guide-figure { max-width: 400px; width: 100%; margin-inline: auto; }
  .template-guide-worked, .template-guide-answers { gap: 6px; }
  .template-guide-steps { gap: 16px; }
  .guide-table-wrap :is(td,th) { padding: 11px 7px; overflow-wrap: normal; }
  .guide-table-wrap table { font-size: .875rem; }
}

.guide-index{margin-block:32px;gap:24px}.guide-index article{border:1px solid var(--line);border-radius:16px;padding:26px;background:#f8fbfe}.guide-index article:hover{border-color:#b9d8eb}.guide-index h2{font-size:1.375rem;line-height:1.4}.guide-index .eyebrow{font-size:.75rem}.guide-index .text-link{color:var(--blue)}
