/* Roof file tool */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rf{padding:36px 20px 64px;max-width:900px}
.rf h2{margin-top:0}
.rf-why{margin-bottom:36px}
.rf-why p{max-width:var(--measure)}
.rf-reasons{padding-left:1.1em;max-width:var(--measure)}
.rf-reasons li{margin-bottom:10px}
.rf-form{border:1.5px solid var(--line);border-radius:6px;padding:22px;margin-bottom:44px}
.rf-group{border-top:1px solid var(--line);padding-top:18px;margin:0 0 6px}
.rf-group>legend{font-family:var(--head);font-weight:600;font-size:1.35rem;padding:0;margin:0;float:left;width:100%;margin-bottom:12px}
.rf-group>legend+*{clear:both}
.rf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;clear:both}
.rf-grid .field{margin-bottom:16px;min-width:0}
.rf-grid fieldset.field{margin-bottom:16px}
.rf-wide{grid-column:1/-1}
.rf-grid .note{margin:0 0 16px}
textarea{resize:vertical}
.rf-prefill{background:var(--ice);border-radius:6px;padding:10px 14px;font-size:.95rem}
.rf-saved{color:var(--ink-2)}
.rf-events{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.rf-ev{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);gap:0 14px;border:1px solid var(--line);border-radius:6px;padding:14px 14px 4px;background:#fbfcfd}
.rf-ev .field{margin-bottom:12px;min-width:0}
.rf-ev-notes{grid-column:1/-1}
.rf-ev-del{justify-self:start;margin-bottom:12px}
.rf-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 4px}
.rf-msg{min-height:1.4em;color:var(--ink-2)}
.rf-cal{margin-bottom:12px}
.rf-cal>p{max-width:var(--measure)}
.rf-rem-list{list-style:none;padding:0;margin:16px 0 0}
.rf-rem-list li{border-top:1px solid var(--line);padding:12px 0 8px}
.rf-rem-list li:last-child{border-bottom:1px solid var(--line)}
.rf-rem-list label{display:flex;gap:12px;align-items:flex-start;font-weight:400;margin:0;cursor:pointer}
.rf-rem-list input{margin-top:5px;width:18px;height:18px;flex:none;accent-color:var(--chalk)}
.rf-rem-list strong{display:block;font-family:var(--head);font-weight:600;font-size:1.12rem}
.rf-rem-list label .small{display:block}
.rf-rem-list li.off{opacity:.75}
.rf-rem-list li.off label{cursor:default}
.rf-rem-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin:6px 0 0 30px}
.rf-print{display:none}
@media(max-width:640px){
  .rf-form{padding:16px}
  .rf-grid{grid-template-columns:1fr}
  .rf-ev{grid-template-columns:1fr}
  .rf-actions .btn{flex:1 1 auto}
}
@media print{
  @page{margin:14mm}
  #main>*:not(#rf-print){display:none!important}
  .rf-print{display:block!important;font-size:10.5pt;line-height:1.35;color:#000}
  .rf-p-head{border-bottom:2px solid #000;margin-bottom:10px;padding-bottom:6px}
  .rf-p-head h1{font-size:20pt;margin:0 0 2px;max-width:none}
  .rf-p-head p{margin:0;font-size:9pt}
  .rf-p-sec{break-inside:avoid;margin:0 0 8px}
  .rf-p-hist{break-inside:auto}
  .rf-p-sec h2{font-size:12.5pt;margin:8px 0 3px}
  .rf-print table{margin:0;font-size:10pt;width:100%}
  .rf-print th,.rf-print td{padding:3px 6px 3px 0;border-bottom:1px solid #bbb;vertical-align:top}
  .rf-print tbody th,.rf-print tr>th:first-child{width:34%;font-family:inherit;font-weight:700;font-size:10pt;border-bottom:1px solid #bbb}
  .rf-p-hist th{width:auto!important;border-bottom:1.5px solid #000!important}
  .rf-p-hist td:first-child{white-space:nowrap}
  .rf-p-foot{font-size:8.5pt;margin-top:10px;color:#333}
  .tablewrap{overflow:visible}
  .tablewrap table{min-width:0}
}
.rf input[type=date]{width:100%;font:inherit;color:var(--ink);background:#fff;border:1.5px solid #b9c1c7;border-radius:4px;padding:10px 12px;min-height:48px}
