[hidden]{display:none!important}
.app-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:860px){.app-grid{grid-template-columns:minmax(0,1fr)}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg,20px);padding:24px}
@media (max-width:639px){.panel{padding:16px}}
.panel + .panel{margin-top:24px}.app-grid > .panel + .panel{margin-top:0}
.panel h2{margin:32px 0 16px;font-size:clamp(22px,.6vw + 19px,26px);line-height:1.2}.panel > h2:first-child,.panel > div:first-child > h2:first-child{margin-top:0}.panel h3{font-size:17px;margin:24px 0 8px}
.panel h2 a{text-decoration-thickness:2px}
.form2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,min(220px,55%));gap:8px 12px;align-items:center;margin-bottom:12px}
.form2 label{font-weight:500;font-size:15px;line-height:1.35}
.form2 input,.form2 select,.grid-table input{font:inherit;min-height:40px;padding:7px 10px;border:1px solid var(--field-line,#8A7F6C);border-radius:10px;
background:var(--field,#FFFDF9);color:var(--ink);width:100%}
.grid-table{width:100%;border-collapse:collapse;margin-bottom:8px}
.grid-table th{text-align:left;font-size:13px;color:var(--muted);font-weight:500;padding:2px 4px;background:none;border:0;letter-spacing:0}
.grid-table td{border:0}
.grid-table td{padding:3px 4px}
.grid-table td:first-child input{min-width:7em}
.grid-table input[type=number]{min-width:5.2em;-moz-appearance:textfield;appearance:textfield}
.grid-table input[type=number]::-webkit-inner-spin-button,.grid-table input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.box-scroll{overflow-x:auto}
button.link{background:none;border:0;text-decoration:underline;color:var(--navy,#14213D);text-decoration-color:var(--coral,#FF6B5B);text-decoration-thickness:2px;text-underline-offset:4px;cursor:pointer;padding:6px 0;font:inherit;font-weight:500}
button.link:hover{text-decoration-color:currentColor}
.results strong.small{font-size:17px;line-height:1.35;letter-spacing:0}
.panel .results{margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}
table.mini{width:100%;border-collapse:collapse;margin:10px 0}
table.mini td{padding:8px 4px;border-bottom:1px solid var(--line)}
table.mini tr:last-child td{border-bottom:0}
table.mini td.n{text-align:right;white-space:nowrap}
table.mini tr:last-child td{font-weight:600}
.warn{color:#b42318;font-weight:600}.ok{color:#067647;font-weight:600}
.quote{border:1px dashed var(--line-strong);border-radius:var(--r-md,12px);padding:20px;margin-top:20px;background:#fff;color:#111}
.quote h2{font-size:22px}
.quote h2{margin:0 0 4px}
details{margin:16px 0}
summary{cursor:pointer;font-weight:500}
@page{margin:15mm}
.quote table.mini td{border-color:#ddd}
@media print{
  .no-print,header,footer,#o-warn{display:none!important}
  body{background:#fff}
  .app-grid{display:block}
  .panel{border:0;padding:0;background:#fff}
  .quote{border:0;margin:0;padding:0}
}

#lic-form{grid-template-columns:minmax(0,1fr) auto;max-width:560px}
#lic-form label{grid-column:1 / -1}
.faq h3{font-size:18px;margin:24px 0 6px}

/* trade calculators: unit (text) and decimal fields need room for their content */
.grid-table td:nth-child(2) input[type=text]{min-width:5em}
.grid-table input[inputmode=decimal]{min-width:4.2em}

/* compact Get Pro box under the printable quote (trade pages with Pro on sale) */
.pro-box{margin-top:20px;padding:16px 20px;background:var(--cream,#F4EDE0);border:1px solid var(--line);border-left:4px solid var(--coral,#FF6B5B);border-radius:var(--r-md,12px);color:var(--navy,#14213D)}
.pro-box p{margin:0}
.pro-box-value{font-size:16px;line-height:1.45}
.pro-box-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:12px}
.pro-box-price{font-size:15px;color:var(--navy,#14213D)}
.pro-box-key{margin-top:10px!important;font-size:15px}
#lic-form{scroll-margin-top:24px}
@media (max-width:639px){.pro-box{padding:14px 16px}}
@media print{.pro-box{display:none!important}}
/* pricing guide pages (/<trade>/how-to-price/) */
.guide .crumb{margin-bottom:8px}
.guide .lead{font-size:var(--t-lead,19px);line-height:1.5;color:var(--muted)}
.guide h3{font-size:18px;margin:24px 0 8px}
.guide .tw{margin:8px 0 16px}
.guide-table td.n{text-align:right;white-space:nowrap}
.guide .cite{font-size:.8em;vertical-align:super;line-height:0;text-decoration:none;margin-left:1px}
.guide .sources li{overflow-wrap:anywhere}
.guide .pro-box{margin:32px 0}
.guide-table td:first-child{width:55%}
.guide-table td.n .fine{white-space:nowrap;font-size:14px!important}
.guide-link{margin:0 0 var(--s-6,24px)!important;font-size:17px!important;font-weight:500}
.guide-link a::after{content:" \2192";text-decoration:none;display:inline-block;margin-left:4px}
