.pf-toolbar{justify-content:space-between}.pf-toolbar,.pf-toolbar__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pf-filters{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}@media (min-width:640px){.pf-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}.pf-filters .field+.field{margin-top:0}.pf-flag-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.pf-flag-list li{margin:0;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.pf-flag-list li[data-severity=problem]{border-left:5px solid var(--bad)}.pf-flag-list li[data-severity=warning]{border-left:5px solid var(--banner)}.pf-flag-list li[data-severity=info]{border-left:5px solid var(--info)}.pf-flag-list__msg{flex:1 1 260px}.pf-clear-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.pf-clear-list li{margin:0}.pf-gates{list-style:none;padding:0;margin:0;display:grid;grid-gap:8px;gap:8px}.pf-gates li{margin:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.pf-checklist{list-style:none;padding:0;margin:0}.pf-checklist li{margin:0;border-bottom:1px solid var(--line)}.pf-checklist li:last-child{border-bottom:0}.pf-tick{gap:8px;min-height:var(--tap);padding:8px 0}.pf-tick,.pf-tick__mark{display:inline-flex;align-items:center}.pf-tick__mark{width:24px;height:24px;flex:none;justify-content:center;border-radius:6px;font-weight:900;font-size:.9rem}.pf-tick__mark[data-ok=true]{background:var(--ok-bg);color:var(--ok);border:1px solid #b7dba1}.pf-tick__mark[data-ok=false]{background:var(--bad-bg);color:var(--bad);border:1px solid #efb5ad}.pf-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px;gap:6px;counter-reset:pfstep}@media (min-width:720px){.pf-steps{grid-template-columns:repeat(6,minmax(0,1fr))}}.pf-steps li{margin:0;counter-increment:pfstep}.pf-steps__item{display:flex;align-items:center;gap:8px;width:100%;min-height:var(--tap);padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;font:inherit;font-size:.9rem;color:var(--ink);text-align:left}button.pf-steps__item{cursor:pointer}button.pf-steps__item:hover{border-color:var(--navy)}.pf-steps__item:before{content:counter(pfstep);display:inline-flex;width:26px;height:26px;flex:none;align-items:center;justify-content:center;border-radius:50%;background:var(--neutral-bg);color:var(--navy);font-weight:800;font-size:.85rem}.pf-steps__item[data-state=done]:before{background:var(--ok-bg);color:var(--ok)}.pf-steps__item[data-state=current]{border:2px solid var(--navy);font-weight:800}.pf-steps__item[data-state=current]:before{background:var(--navy);color:#fff}.pf-steps__item[data-state=todo]{color:var(--muted)}.pf-step-head:focus{outline:none}.pf-step-head:focus-visible{outline:3px solid var(--link);outline-offset:2px}.pf-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;margin-top:20px}.pf-fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px 16px;margin:0}.pf-fieldset legend{font-weight:800;color:var(--navy);padding:0 6px}.pf-fieldset+.pf-fieldset{margin-top:16px}.pf-two{display:grid;grid-template-columns:1fr;grid-gap:0 16px;gap:0 16px}@media (min-width:640px){.pf-two{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-two .field+.field{margin-top:0}.pf-two>.field{margin-bottom:16px}}.pf-colour-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pf-colour-row input[type=color]{width:56px;height:var(--tap);padding:2px;border:1px solid #8a94a3;border-radius:var(--radius-sm);background:#fff;cursor:pointer}.pf-colour-row .input{max-width:10rem;font-family:var(--mono)}.pf-swatch{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;font-weight:800}.pf-preview,.pf-swatch{border-radius:var(--radius-sm);border:1px solid var(--line)}.pf-preview{overflow:hidden}.pf-preview__head{display:flex;align-items:center;gap:10px;padding:12px 14px}.pf-preview__badge{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;flex:none}.pf-preview__body{padding:12px 14px;background:#fff;font-size:.9rem}.pf-src{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.4px;padding:2px 8px;border-radius:999px;background:var(--neutral-bg);color:var(--navy-dark);border:1px solid var(--line-strong);white-space:nowrap}.pf-src[data-src=LAW]{background:#e9e2f5;border-color:#c4b3e2;color:#35204f}.pf-src[data-src=CODE]{background:var(--info-bg);border-color:#b9d6ef;color:#12324f}.pf-src[data-src="CAP/ASA"]{background:var(--warn-bg);border-color:#f0d68a;color:#4d3200}.pf-src[data-src=OPINION]{background:#fde8e4;border-color:#efb5ad;color:#5d150e}.pf-src[data-src="GC GUIDANCE"]{background:var(--ok-bg);border-color:#b7dba1;color:#1d4312}.pf-src-list{display:flex;flex-wrap:wrap;gap:4px}.pf-where{list-style:none;padding:0;margin:0}.pf-where li{margin:0 0 4px}.pf-q:target,.pf-rule-row:target td{background:#fffbe8}.pf-q:target{border-radius:var(--radius-sm)}.pf-invoice-sheet{position:relative;max-width:210mm;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;overflow:hidden;page:pfinvoice}.pf-invoice-sheet h2{margin:0 0 4px}.pf-invoice-grid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}@media (min-width:640px){.pf-invoice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pf-invoice-lines{width:100%;margin-top:16px}.pf-invoice-lines td,.pf-invoice-lines th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.pf-invoice-lines th{font-size:.85rem;color:var(--muted)}.pf-invoice-lines .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pf-invoice-lines tfoot td{border-bottom:0}.pf-invoice-lines tfoot tr:last-child td{font-weight:800;font-size:1.1rem;border-top:2px solid var(--navy)}.pf-stamp{position:absolute;top:22px;right:18px;transform:rotate(-12deg);border:4px double var(--bad);color:var(--bad);padding:6px 12px;font-weight:900;text-transform:uppercase;letter-spacing:1px;font-size:.95rem;border-radius:6px;background:hsla(0,0%,100%,.85);text-align:center;line-height:1.2}@media (max-width:520px){.pf-stamp{position:static;display:inline-block;transform:rotate(-4deg);margin-bottom:12px}}@page pfinvoice{size:A4;margin:14mm}@media print{body:has(.pf-invoice-sheet) .app-header,body:has(.pf-invoice-sheet) .site-footer{display:none!important}.pf-invoice-sheet{border:0;border-radius:0;padding:0;max-width:none;box-shadow:none}.pf-invoice-wrap{padding:0!important}.pf-stamp{position:absolute;display:block;transform:rotate(-12deg)}}