.tl-tool{margin:24px 0 32px;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--wash-sage)}
.tl-tool[hidden],#tl-result[hidden]{display:none}
.tl-field{margin:14px 0}
.tl-field label{display:block;font-weight:700;margin-bottom:6px}
.tl-tool select,.tl-tool input[type=date]{min-height:44px;max-width:100%;font:inherit;padding:8px 10px;border:1px solid #81968d;border-radius:4px;background:#fff;color:var(--ink)}
.tl-tool select{width:100%;max-width:420px}
.tl-tool button{min-height:44px;min-width:44px;padding:8px 14px;margin:0 8px 8px 0;font:inherit;font-weight:700;color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:6px;cursor:pointer}
.tl-tool button:hover{background:var(--cream)}
.tl-tool button:focus-visible,.tl-tool input:focus-visible,.tl-tool select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.tl-list,.tl-steps{list-style:none;margin:16px 0;padding:0;display:flex;flex-direction:column;gap:12px}
.tl-item,.tl-step{padding:12px 14px;background:#fff;border:2px solid var(--line);border-radius:8px;overflow-wrap:anywhere}
.tl-item p,.tl-step span{margin:4px 0}
.tl-step span{display:block}
.tl-when{font-weight:700;font-size:1.1em;color:var(--ink)}
.tl-what{font-weight:700}
.tl-item .tl-what{font-weight:400;font-size:1.1em}
.tl-meta,.tl-detail,.tl-lead,.tl-note,.tl-src,.tl-quote{color:var(--soft-ink);font-size:.95rem}
.tl-lead{font-weight:700}
.tl-due{border-color:var(--ink);border-width:4px}
.tl-flag{font-weight:700;color:var(--ink);padding:4px 8px;border:2px solid currentColor;border-radius:4px;display:inline-block}
.tl-flag::before{content:"Warning: "}
.tl-place{font-weight:400;font-size:.8em;color:var(--soft-ink)}
.tl-none{font-weight:700}
.tl-print-only{display:none}
@media (max-width:480px){.tl-tool{padding:14px}}
@media print{
  .site-header,.site-footer,.breadcrumb,.skip-link,.page-heading p,.eyebrow,.tl-actions,.tl-field,#tl-status,.tl-tool>h2,.tl-tool>p{display:none!important}
  .prose>*:not(.tl-tool){display:none!important}
  .tl-tool{border:0;background:none;padding:0;margin:0}
  .tl-print-only{display:block!important}
  body{font-size:14pt;color:#000;background:#fff}
  .tl-item{break-inside:avoid;border:1px solid #000;font-size:14pt}
  .tl-when{font-size:16pt}
  .tl-flag{border:2px solid #000}
}
