/* Commons tools, round 2: email check, backup planner, vendor questionnaire, data map, phishing drill kit.
   Loaded after tools.css (which supplies .tool-privacy, .ip-layout, .ip-step, .ip-bar, .sheet-frame and .fill). */

/* ---------- Shared: sources ---------- */
.t2-reviewed{margin-top:2rem;font-family:var(--f-display);font-size:1.5rem;font-weight:340}
.t2-reviewed .mono{display:block;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sun-ink);margin-bottom:.2rem}
.t2-src{list-style:none;padding:0;margin:0;counter-reset:src;border-top:1px solid var(--line-2)}
.t2-src li{counter-increment:src;position:relative;display:grid;gap:.15rem;padding:1rem 0 1rem 2.6rem;border-bottom:1px solid var(--line-2)}
.t2-src li::before{content:counter(src,decimal-leading-zero);position:absolute;left:0;top:1.1rem;font-family:var(--f-mono);font-size:.72rem;color:var(--sun-ink)}
.t2-src .mono{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.t2-src a{color:var(--text);font-weight:500;text-decoration-color:var(--sun)}
.t2-url{font-family:var(--f-mono);font-size:.72rem;color:var(--muted);overflow-wrap:anywhere}

/* ---------- Shared: repeating entries ---------- */
.t2-list{display:grid;gap:1rem}
.t2-list:empty{display:none}
.ip-form fieldset.t2-entry{display:block;margin:0;padding:1.2rem 1.2rem 1rem;border:1px solid var(--line);border-radius:16px;background:var(--paper);min-width:0}
.t2-entry > legend{float:left;width:100%;display:flex;align-items:baseline;gap:.7rem;margin:0 0 .9rem;padding:0;font:600 1rem/1.3 var(--f-sans);letter-spacing:0;overflow-wrap:anywhere}
.t2-entry > legend + *{clear:both}
.t2-entry > * + *{margin-top:.9rem}
.t2-entry .row > *{margin:0}
.t2-entry .row{gap:.9rem}
.t2-entry .field input,.t2-entry .field select,.t2-entry .field textarea{min-height:44px;padding:.6rem .8rem;font-size:.95rem}
.t2-entry .field textarea{min-height:84px}
.t2-entry .field label{font-size:.84rem}
.t2-entry-n{font-family:var(--f-mono);font-size:.72rem;color:var(--sun-ink)}
.t2-remove{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;padding:0 .2rem;border:0;background:none;font:500 .84rem/1 var(--f-sans);color:var(--muted);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:.2em;cursor:pointer}
.t2-remove:hover{color:var(--text);text-decoration-color:currentColor}
.t2-add{height:46px;padding:0 1.2rem;font-size:.92rem;margin-top:1rem}
.t2-add:disabled{opacity:.5;cursor:not-allowed}
@media (max-width:560px){.t2-entry .row{grid-template-columns:minmax(0,1fr)}}

/* ---------- Shared: the printable document ---------- */
.doc{--ink:#13201b;--rule:#9a917f;--soft:#5b665f;--sun-ink:#8f5300;background:#fff;color:var(--ink);font-size:13px;line-height:1.45;padding:clamp(1.1rem,.6rem + 2vw,2.2rem);border-top:5px solid var(--night);box-shadow:0 1px 2px rgba(19,32,27,.08),0 14px 40px -18px rgba(19,32,27,.35);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.doc + .doc{margin-top:1.4rem}
.doc a{color:inherit}
.doc h3{font:600 .66rem/1.2 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0 0 .55rem;padding-bottom:.4rem;border-bottom:1px solid var(--ink)}
.doc dl{margin:0}
.doc dt{font:500 .62rem/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.doc dd{margin:0;overflow-wrap:anywhere}
.doc-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:1rem 1.6rem;align-items:end;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--rule)}
.doc-kicker{display:flex;align-items:center;gap:.5rem;margin:0 0 .45rem;font:600 .66rem/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--sun-ink)}
.doc-kicker::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--sun)}
.doc-title{font-family:var(--f-display);font-weight:340;font-size:clamp(1.45rem,1.2rem + 1vw,2rem);line-height:1.1;letter-spacing:-.015em;margin:0;overflow-wrap:anywhere}
.doc-title--sm{font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem)}
.doc-meta{display:grid;gap:.5rem}
.doc-meta dd{font-size:.92em}
.doc-rules{list-style:none;margin:0 0 1rem;padding:.75rem .9rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem 1rem;background:#fbefd9;border:1px solid #efd6a8;border-radius:8px;color:#3d2a0c;font-size:.86em;line-height:1.35}
.doc-rules strong{display:block;color:#21170a}
.doc-table{width:100%;border-collapse:collapse;font-size:.92em}
.doc-table thead th{font:500 .58rem/1.25 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--soft);text-align:left;padding:0 .45rem .35rem 0;vertical-align:bottom}
.doc-table td,.doc-table tbody th{text-align:left;vertical-align:top;padding:.45rem .6rem .45rem 0;border-top:1px solid #e3ddd0;overflow-wrap:break-word;hyphens:auto}
.doc-table tbody th{font-weight:600;width:55%}
.doc-blank td{height:2.1em}
.doc-table td:first-child{font-weight:600}
.doc-table .ln{display:block}
.doc-table .ln + .ln{font-weight:400;color:var(--soft);font-size:.93em;margin-top:.1rem}
#bp-plan tr.is-gap td:nth-child(3),#bp-log tr.is-gap td:nth-child(4){color:#9a2a12;font-weight:600}
.doc-table tr.is-sensitive td:first-child{box-shadow:inset 3px 0 0 var(--sun)}
.doc-table tr.is-sensitive td:first-child{padding-left:.55rem}
.doc-table--form td{height:2.2em}
.doc-box{margin-top:1.1rem}
.doc-flags,.doc-checks{margin:0;padding:0;list-style:none;display:grid;gap:.35rem}
.doc-flags li,.doc-checks li{position:relative;padding-left:1.2rem}
.doc-flags li::before{content:"";position:absolute;left:0;top:.45em;width:.5rem;height:.5rem;border-radius:50%;background:var(--sun)}
.doc-flags li[data-level="start"]::before{background:#d44a14}
.doc-checks li::before{content:"";position:absolute;left:.05rem;top:.3em;width:.7rem;height:.7rem;border:1.2px solid var(--ink);border-radius:2px}
.doc-foot{margin-top:1.1rem;padding-top:.7rem;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1.5rem;font-size:.78em;color:var(--soft)}
.doc-foot p{margin:0}
.doc-prose p{margin:0 0 .75em;font-size:1.08em;line-height:1.55}
.doc-note{margin:0 0 .8rem;font-size:.88em;color:var(--soft)}
.doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:.2rem 1.4rem}
.doc-lines{height:6.3em;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(2.1em - 1px),var(--rule) calc(2.1em - 1px),var(--rule) 2.1em)}
.fill--inline:empty{width:8em;min-width:6em}
.doc .fill:empty{display:inline-block;width:100%;min-width:4em;height:1.25em;border-bottom:1px solid var(--rule);vertical-align:bottom}
.doc .fill--inline:empty{width:9em}
.doc-title .fill--org:empty,.doc-title .fill--inline:empty{width:70%;height:1.1em}
.t2-layout .sheet-frame{max-height:calc(100vh - 220px)}
@media (max-width:980px){.t2-layout .sheet-frame{max-height:none}}
@media (max-width:640px){
  .doc{font-size:12.5px}
  .doc-head,.doc-foot,.doc-grid,.doc-rules{grid-template-columns:minmax(0,1fr)}
  .doc-table:not(.doc-table--form) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .doc-table:not(.doc-table--form),.doc-table:not(.doc-table--form) tbody,.doc-table:not(.doc-table--form) tr,.doc-table:not(.doc-table--form) td{display:block;width:100%}
  .doc-table:not(.doc-table--form) tr{border-top:1px solid var(--rule);padding:.5rem 0}
  .doc-table:not(.doc-table--form) td{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.6rem;border:0;padding:.15rem 0}
  .doc-table:not(.doc-table--form) td .ln{grid-column:2}
  .doc-table:not(.doc-table--form) td::before{content:attr(data-label);font:500 .58rem/1.6 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
  .doc-table .doc-blank td{height:auto;min-height:1.9em;border-bottom:1px solid #e3ddd0}
  .doc-table tr.doc-blank:nth-of-type(n+3){display:none}
}

/* ---------- Email check ---------- */
.ec-top{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:1.5rem 3rem;align-items:end}
.ec-top .tool-privacy{margin:0}
.ec-privacy a{color:inherit}
.ec-field label{display:block;font-family:var(--f-display);font-weight:360;font-size:clamp(1.4rem,1.2rem + .8vw,1.9rem);letter-spacing:-.012em;line-height:1.15;margin-bottom:.9rem}
.ec-field .hint{display:block;margin-top:.35rem;font:400 .92rem/1.5 var(--f-sans);letter-spacing:0;color:var(--muted)}
.ec-input{display:flex;gap:.6rem;padding:.4rem;border:1px solid var(--field-line);border-radius:999px;background:var(--field);transition:border-color .2s,box-shadow .2s}
.ec-input:focus-within{border-color:var(--text)}
.ec-input input{flex:1;min-width:0;border:0;background:transparent;font:500 1.15rem/1 var(--f-mono);letter-spacing:-.01em;color:var(--text);padding:0 1rem;min-height:52px}
.ec-input input:focus{outline:none}
.ec-input input:focus-visible{outline:2px solid var(--sun);outline-offset:3px;border-radius:999px}
.ec-input input[aria-invalid="true"]{color:var(--err-ink)}
.ec-input .btn{flex:none;height:52px}
.ec-input .btn:disabled{opacity:.6;cursor:progress}
.ec-error{margin:.6rem 0 0;min-height:1.4em;font-size:.92rem;font-weight:500;color:var(--err-ink)}
.ec-error:empty{min-height:0;margin:0}
.ec-results{margin-top:clamp(2.5rem,2rem + 2vw,4rem);padding-top:clamp(2rem,1.5rem + 1.5vw,3rem);border-top:1px solid var(--line)}
.ec-res-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:1.6rem}
.ec-res-head .btns .btn{height:44px;padding:0 1.1rem;font-size:.9rem}
.ec-res-kicker{margin:0 0 .5rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sun-ink)}
.ec-res-title{font-family:var(--f-display);font-weight:330;font-size:clamp(1.7rem,1.4rem + 1.2vw,2.5rem);line-height:1.08;letter-spacing:-.018em;overflow-wrap:anywhere}
.ec-summary{margin:.8rem 0 0;max-width:44rem;color:var(--body);font-size:1.05rem}
.ec-summary:empty{display:none}
.ec-chips{list-style:none;margin:0 0 1.6rem;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem}
.ec-chip{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.15rem .6rem;padding:.8rem .95rem;border-radius:14px;border:1px solid var(--line);background:var(--paper-3);color:var(--muted)}
.ec-dot{grid-row:span 2;width:.7rem;height:.7rem;border-radius:50%;border:1.5px solid currentColor;opacity:.6}
.ec-chip-name{font:600 .78rem/1.2 var(--f-mono);letter-spacing:.06em;color:var(--text)}
.ec-chip-state{font-size:.84rem;line-height:1.3}
.ec-chip[data-state="good"],.ec-card[data-state="good"] .ec-state{background:var(--callout-leaf);border-color:var(--callout-leaf-line);color:var(--callout-leaf-ink)}
.ec-chip[data-state="warn"],.ec-card[data-state="warn"] .ec-state{background:var(--callout);border-color:var(--callout-line);color:var(--callout-ink)}
.ec-chip[data-state="bad"],.ec-card[data-state="bad"] .ec-state{background:var(--err-bg);border-color:var(--err-line);color:var(--err-ink)}
.ec-chip[data-state="good"] .ec-dot,.ec-chip[data-state="warn"] .ec-dot,.ec-chip[data-state="bad"] .ec-dot{background:currentColor;opacity:1}
.ec-chip[data-state="info"] .ec-dot{opacity:1}
.ec-chip[data-state="good"] .ec-dot{background:var(--leaf);border-color:var(--leaf)}
.ec-chip[data-state="warn"] .ec-dot{background:var(--sun);border-color:var(--sun)}
.ec-chip[data-state="bad"] .ec-dot{background:var(--ember);border-color:var(--ember)}
.ec-card[data-state="good"]{border-color:var(--callout-leaf-line)}
.ec-card[data-state="warn"]{border-color:var(--callout-line)}
.ec-card[data-state="bad"]{border-color:var(--err-line)}
.ec-chip[data-state="busy"] .ec-dot{border-style:dashed;animation:ec-spin 1.2s linear infinite;opacity:1}
@keyframes ec-spin{to{transform:rotate(360deg)}}
.ec-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ec-cards:empty{display:none}
.ec-card{display:flex;flex-direction:column;gap:.9rem;padding:1.4rem 1.4rem 1.2rem;border-radius:18px;border:1px solid var(--line);background:var(--paper-3);min-width:0}
.ec-card:first-child{grid-column:1/-1}
.ec-card-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.ec-card h3{font-family:var(--f-display);font-weight:380;font-size:1.6rem;letter-spacing:-.01em;line-height:1}
.ec-state{flex:none;padding:.3rem .7rem;border-radius:999px;border:1px solid var(--line-2);font:600 .7rem/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ec-record{margin:0;padding:.8rem .95rem;border-radius:10px;background:var(--paper-2);border:1px solid var(--line);font:.8rem/1.55 var(--f-mono);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;max-height:10rem;overflow:auto}
.ec-points{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.ec-points li{position:relative;padding-left:1.3rem;font-size:.95rem;line-height:1.5;color:var(--body)}
.ec-points li::before{content:"";position:absolute;left:.1rem;top:.5em;width:.55rem;height:.55rem;border-radius:50%;background:var(--line-2)}
.ec-points li[data-tone="good"]::before{background:var(--tick)}
.ec-points li[data-tone="warn"]::before{background:var(--sun)}
.ec-points li[data-tone="bad"]::before{background:var(--ember)}
.ec-card .link-arrow{margin-top:auto;font-size:.9rem;font-weight:600;color:var(--text);text-decoration:underline;text-decoration-color:var(--sun)}
.ec-fine{margin:1.4rem 0 0;font-size:.86rem;color:var(--muted);max-width:48rem}
.ec-fixes{display:grid;gap:1rem}
.ec-fix{padding:1.5rem 1.5rem 1.3rem;border-radius:18px;border:1px solid var(--line);background:var(--paper-3)}
.ec-fix-head .mono{margin:0 0 .4rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sun-ink)}
.ec-fix-head h3{font-family:var(--f-display);font-weight:360;font-size:clamp(1.4rem,1.25rem + .6vw,1.8rem);letter-spacing:-.012em;line-height:1.15;margin-bottom:.8rem}
.ec-fix-body > p{color:var(--body)}
.ec-fix-body h4{font:600 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:1.2rem 0 .7rem}
.ec-steps{margin:0;padding-left:1.3rem;display:grid;gap:.6rem;color:var(--body)}
.ec-steps li::marker{color:var(--sun-ink);font-family:var(--f-mono);font-size:.85em}
.ec-fix code,.ec-field code,.callout code{font-family:var(--f-mono);font-size:.86em;padding:.05em .3em;border-radius:5px;background:var(--paper-2);border:1px solid var(--line);overflow-wrap:anywhere}
.ec-examples{margin-top:1.1rem;display:grid;gap:.4rem}
.ec-examples .mono{margin:0;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ec-examples code{display:block;padding:.6rem .8rem;font-size:.8rem;border-radius:10px;white-space:pre-wrap}
@media (max-width:980px){.ec-top{grid-template-columns:minmax(0,1fr)}.ec-chips{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.ec-cards{grid-template-columns:minmax(0,1fr)}.ec-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-input{flex-direction:column;border-radius:20px}.ec-input input{min-height:48px}.ec-input .btn{justify-content:center}}

/* ---------- Vendor questionnaire ---------- */
.vq-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.6rem}
.vq-cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.vq-card{position:relative;display:flex}
.vq-card input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.vq-card span{display:grid;gap:.25rem;width:100%;padding:.85rem 1rem;border:1px solid var(--line-2);border-radius:14px;background:var(--field);transition:border-color .2s,background .2s,box-shadow .2s}
.vq-card strong{font-size:.95rem;line-height:1.3;color:var(--text)}
.vq-card small{font-size:.82rem;line-height:1.4;color:var(--muted)}
.vq-card:hover span{border-color:var(--text)}
.vq-card input:checked + span{border-color:var(--text);box-shadow:inset 0 0 0 1px var(--text);background:var(--paper-3)}
.vq-card span{position:relative;padding-right:2rem}
.vq-card input:checked + span::after{content:"";position:absolute;top:.95rem;right:.95rem;width:.42rem;height:.72rem;border-right:2px solid var(--tick);border-bottom:2px solid var(--tick);transform:rotate(45deg)}
.vq-card input:focus-visible + span{outline:2px solid var(--sun);outline-offset:3px}
@media (max-width:560px){.vq-cards--3{grid-template-columns:minmax(0,1fr)}}
.vq-intro{margin:0 0 .6rem}
.vq-profile{margin:0 0 1rem;font:500 .66rem/1.4 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.vq-groups{counter-reset:vq}
.vq-group{margin-top:1.2rem;break-inside:auto}
.vq-list{list-style:none;margin:0;padding:0}
.vq-q{counter-increment:vq;position:relative;padding:.55rem 0 .6rem 2rem;border-top:1px solid #e3ddd0;break-inside:avoid}
.vq-q:first-child{border-top:0}
.vq-q::before{content:counter(vq,decimal-leading-zero);position:absolute;left:0;top:.62rem;font:500 .7rem/1.4 var(--f-mono);color:var(--sun-ink)}
.vq-q[hidden],.vq-group[hidden]{display:none}
.vq-text{margin:0;font-weight:500}
.vq-good{display:none;margin:.3rem 0 0;font-size:.9em;color:var(--soft)}
.vq-good .mono{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;margin-right:.35rem;color:var(--sun-ink)}
.show-good .vq-good,html:not(.js) .vq-good{display:block}
.vq-answer{height:3.4em;margin-top:.35rem;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(1.7em - 1px),#d8d1c2 calc(1.7em - 1px),#d8d1c2 1.7em)}

/* ---------- Phishing drill ---------- */
.pd-rules{list-style:none;margin:0;padding:0;counter-reset:rule;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.pd-rules li{counter-increment:rule;padding:1.4rem 1.4rem 1.2rem;border-radius:18px;border:1px solid var(--line);background:var(--paper-3)}
.pd-rules li::before{content:counter(rule,decimal-leading-zero);display:block;margin-bottom:.7rem;font:500 .74rem/1 var(--f-mono);color:var(--sun-ink)}
.pd-rules h3{font-family:var(--f-display);font-weight:380;font-size:1.35rem;letter-spacing:-.01em;line-height:1.15;margin-bottom:.5rem}
.pd-rules p{margin:0;font-size:.95rem;color:var(--body)}
@media (max-width:640px){.pd-rules{grid-template-columns:minmax(0,1fr)}}
.pd-mails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem 1.2rem}
@media (max-width:1060px){.pd-mails{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.pd-mails{grid-template-columns:minmax(0,1fr)}}
.pd-mail{margin:0;display:flex;flex-direction:column;gap:1rem;min-width:0}
.pd-shot{position:relative;overflow:hidden;border-radius:14px;border:1px solid #d9d3c6;background:#fff;color:#1d2622;box-shadow:0 1px 2px rgba(19,32,27,.08),0 18px 40px -24px rgba(19,32,27,.45);font-size:.86rem;line-height:1.45;user-select:none;-webkit-user-select:none}
.pd-mark{position:absolute;inset:-20% -30%;display:grid;place-items:center;transform:rotate(-24deg);pointer-events:none;font:700 1.55rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(179,58,11,.13);white-space:nowrap;text-shadow:0 2.6em 0 rgba(179,58,11,.13),0 -2.6em 0 rgba(179,58,11,.13)}
.pd-chrome{display:flex;justify-content:space-between;align-items:center;padding:.55rem .9rem;background:#f1ede4;border-bottom:1px solid #e1dbcd}
.pd-badge{padding:.2rem .55rem;border-radius:999px;background:#b33a0b;color:#fff;font:600 .62rem/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.pd-time{font:500 .72rem/1 var(--f-mono);color:#5b665f}
.pd-headers{margin:0;padding:.75rem .9rem .6rem;border-bottom:1px solid #ece7dc;display:grid;gap:.25rem}
.pd-headers div{display:grid;grid-template-columns:3.6rem minmax(0,1fr);gap:.5rem}
.pd-headers dt{font:500 .64rem/1.7 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#5b665f}
.pd-headers dd{margin:0;overflow-wrap:anywhere}
.pd-headers .mono{font-size:.78em;color:#4c5751}
.pd-body{position:relative;padding:.8rem .9rem 1rem}
.pd-body p{margin:0 0 .6rem}
.pd-btn{display:inline-block;margin-top:.2rem;padding:.45rem .9rem;border-radius:6px;background:#2f4f8f;color:#fff;font-weight:600;font-size:.82rem}
.pd-mail figcaption{display:grid;gap:.35rem}
.pd-mail figcaption .mono{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sun-ink)}
.pd-cap-title{font-family:var(--f-display);font-size:1.2rem;line-height:1.2;color:var(--text)}
.pd-flags{margin:.2rem 0 0;padding:0;list-style:none;display:grid;gap:.3rem}
.pd-flags a{color:var(--text);text-decoration-color:var(--sun)}
.pd-flags li{position:relative;padding-left:1.15rem;font-size:.9rem;line-height:1.45;color:var(--body)}
.pd-flags li::before{content:"";position:absolute;left:0;top:.42em;width:.6rem;height:.6rem;border-radius:2px;background:var(--ember);transform:rotate(45deg) scale(.75)}
.pd-head{margin-bottom:clamp(1.8rem,1.4rem + 1.5vw,3rem)}
.pd-kit-head{margin-bottom:2rem}
.pd-docs .sheet-frame{display:grid;gap:1.4rem}
.pd-docs .doc + .doc{margin-top:0}

/* ---------- Print ---------- */
@media print{
  body:has(.t2-page) .page-hero,body:has(.t2-page) .t2-sources,body:has(.t2-page) .tool-more{display:none!important}
  .t2-layout{display:block!important}
  .doc{box-shadow:none;padding:0;font-size:8.8pt;border-top:4pt solid #000!important;padding-top:9pt}
  .doc *{color:#000!important}
  .doc-rules{background:#f3f3f3!important;border-color:#000!important}
  .doc-kicker::before{background:#000!important}
  .doc-head,.doc-foot,.doc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .doc-rules{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .doc-table thead{position:static!important;width:auto;height:auto;clip:auto}
  .doc-table{display:table!important}.doc-table tbody{display:table-row-group!important}.doc-table tr{display:table-row!important}
  .doc-table td{display:table-cell!important;border-top:.5pt solid #999!important}
  .doc-table td::before{content:none!important}
  .doc-table tr.doc-blank{display:table-row!important}
  .doc-blank td{height:2.4em}
  .doc-box,.doc-head,.vq-q,tr{break-inside:avoid}
  .doc + .doc{break-before:page;margin-top:0}
  .doc .fill:empty{border-color:#666!important;height:1.9em}
  .doc-table tr.is-sensitive td:first-child{box-shadow:inset 3pt 0 0 #000}
  .vq-answer{background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(1.9em - 1px),#999 calc(1.9em - 1px),#999 1.9em)!important;height:5.7em}
  .doc-lines{height:8.4em;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(2.1em - 1px),#999 calc(2.1em - 1px),#999 2.1em)!important}

  /* Email check: the results only */
  body:has(.ec-results) #fix,.ec-top,.ec-chip .ec-dot{display:none!important}
  .ec-results{margin:0;padding:0;border:0}
  .ec-chips{grid-template-columns:repeat(5,minmax(0,1fr))}
  .ec-chip,.ec-card,.ec-state,.ec-record{background:#fff!important;color:#000!important;border-color:#999!important}
  .ec-cards{grid-template-columns:minmax(0,1fr)}
  .ec-card{break-inside:avoid;padding:8pt 10pt}
  .ec-card .link-arrow{display:none}
  .ec-points li::before{background:#000!important}
  .ec-record{max-height:none;overflow:visible}

  /* Phishing drill: the documents only (one of them when a print button chose it) */
  body:has(.pd-docs) main > section:not(#kit){display:none!important}
  body:has(.pd-docs) .pd-kit-head{display:none}
  html[data-print-part="briefing"] #pd-debrief,html[data-print-part="debrief"] #pd-briefing{display:none!important}
  html[data-print-part] .doc + .doc{break-before:auto}
  .pd-docs .sheet-frame{display:block}
}
