.cdt{--cdt-ink:#172c37;--cdt-muted:#53646c;--cdt-line:#d9e2e3;--cdt-accent:#087d77;color:var(--cdt-ink);font:inherit;line-height:1.65;max-width:1100px;margin:0 auto}.cdt *{box-sizing:border-box}.cdt button,.cdt input,.cdt select,.cdt textarea{font:inherit}.cdt a{color:var(--cdt-accent)}.cdt-hero{background:#f0f7f5;border:1px solid var(--cdt-line);border-radius:20px;padding:clamp(20px,4vw,42px);margin:18px 0 22px}.cdt-hero h2{font-size:clamp(24px,3vw,34px);line-height:1.35;margin:7px 0}.cdt-eyebrow{color:var(--cdt-accent);font-size:12px;letter-spacing:.13em;font-weight:700}.cdt-search-label{display:block;font-weight:700;margin-top:22px}.cdt-search,.cdt-field input,.cdt-field select,.cdt-field textarea{display:block;width:100%;min-height:44px;border:1px solid #aebfc0;border-radius:9px;padding:9px 12px;color:var(--cdt-ink);background:#fff}.cdt-search{margin-top:6px}.cdt-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 24px}.cdt-tabs a,.cdt-tab{background:#fff;border:1px solid var(--cdt-line);padding:7px 13px;border-radius:999px;text-decoration:none;color:var(--cdt-ink);cursor:pointer}.cdt-tabs .is-active{background:var(--cdt-ink);color:#fff}.cdt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:15px}.cdt-card{position:relative;border:1px solid var(--cdt-line);border-radius:14px;background:#fff;padding:20px 18px 45px;min-height:175px}.cdt-card h3{font-size:18px;line-height:1.4;margin:6px 28px 6px 0}.cdt-card p{font-size:13px;color:var(--cdt-muted);margin:0}.cdt-category{font-size:12px;color:var(--cdt-accent);font-weight:700}.cdt-favorite{border:0;background:#eaf4f1;color:var(--cdt-accent);cursor:pointer;border-radius:8px;min-width:39px;min-height:39px;font-size:22px;line-height:1}.cdt-card .cdt-favorite{position:absolute;right:13px;top:13px}.cdt-breadcrumb{font-size:13px;color:var(--cdt-muted)}.cdt-intro{display:flex;align-items:flex-start;gap:16px;justify-content:space-between}.cdt-intro p{margin:8px 0 18px}.cdt-app{background:#fff;border:1px solid var(--cdt-line);border-radius:16px;padding:clamp(18px,3vw,30px);margin:12px 0}.cdt-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.cdt-field{font-weight:700;font-size:14px}.cdt-field input,.cdt-field select,.cdt-field textarea{margin-top:6px;font-weight:400}.cdt-field:has(textarea){grid-column:1/-1}.cdt-field textarea{min-height:150px;resize:vertical}.cdt-action{margin-top:20px;border:0;background:var(--cdt-accent);color:#fff;border-radius:9px;padding:10px 24px;min-height:44px;cursor:pointer;font-weight:700}.cdt-action:disabled{opacity:.5;cursor:wait}.cdt-result{margin-top:22px;border-top:1px solid var(--cdt-line);padding-top:20px;overflow-wrap:anywhere}.cdt-result h3{margin:0 0 8px;font-size:19px}.cdt-result strong.cdt-number{font-size:clamp(21px,3vw,29px);color:var(--cdt-accent)}.cdt-result p{margin:8px 0}.cdt-result ul{margin:8px 0 0;padding-left:23px}.cdt-note,.cdt-privacy{font-size:13px;color:var(--cdt-muted)}.cdt-warning{color:#9a3c17;font-weight:700}.cdt-swatches{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.cdt-swatch{min-width:90px;min-height:90px;border-radius:9px;border:1px solid var(--cdt-line);padding:9px;display:flex;align-items:end;font-size:12px;font-weight:700}.cdt-preview{border:1px solid var(--cdt-line);border-radius:9px;padding:18px;max-width:550px}.cdt-preview .cdt-url{color:#146b38;font-size:13px}.cdt-preview .cdt-blue{color:#1a0dab;font-size:19px;line-height:1.3}.cdt-related{margin:26px 0}.cdt-related ul{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;padding:0}.cdt-result a.cdt-download{display:inline-block;background:var(--cdt-accent);color:#fff;padding:9px 18px;border-radius:9px;text-decoration:none;margin:9px 0}.cdt-empty{text-align:center;padding:20px}.cdt [hidden]{display:none!important}
.cdt-output{display:block;width:100%;min-height:165px;border:1px solid var(--cdt-line);border-radius:9px;padding:12px;color:var(--cdt-ink);background:#f8fbfa;font:inherit;resize:vertical}
@media(max-width:600px){.cdt-grid{grid-template-columns:1fr}.cdt-card{min-height:0}.cdt-tabs{gap:7px}.cdt-fields{grid-template-columns:1fr}.cdt-app{padding:17px}.cdt-result .cdt-number{font-size:22px}}

/* Make the heading link cover its card while keeping the favorite button independent. */
.cdt-card{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}
.cdt-card h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.cdt-card .cdt-favorite{z-index:2}
.cdt-card:hover,.cdt-card:focus-within{border-color:var(--cdt-accent);box-shadow:0 4px 18px rgba(8,125,119,.10)}
.cdt-card:focus-within{outline:2px solid var(--cdt-accent);outline-offset:2px}

/* Keep theme heading decorations out of the tool cards and result panel. */
.cdt-card h3,.cdt-result h3{border:0!important;padding:0!important;background:none!important;box-shadow:none!important}
.cdt-card h3::before,.cdt-card h3::after,.cdt-result h3::before,.cdt-result h3::after{content:none!important;display:none!important}

/* Directory layout, scoped to the hub so individual tool forms remain stable. */
.cdt-hub{--cdt-ink:#21313a;--cdt-muted:#5d6d73;--cdt-accent:#087d77;--cdt-line:#d9e4e2;margin:16px auto 42px}
.cdt-hub .cdt-hero{position:relative;overflow:hidden;margin:0 0 36px;padding:clamp(25px,5vw,48px);border:1px solid #cbded9;border-radius:20px;background:linear-gradient(135deg,#eef8f4 0%,#f7faf6 76%,#fff 100%)}
.cdt-hub .cdt-hero::after{content:"";position:absolute;right:-90px;top:-100px;width:320px;height:320px;border:1px solid rgba(8,125,119,.13);border-radius:50%;box-shadow:0 0 0 46px rgba(8,125,119,.035),0 0 0 95px rgba(8,125,119,.025);pointer-events:none}
.cdt-hub .cdt-hero>*{position:relative;z-index:1}
.cdt-hub .cdt-eyebrow,.cdt-hub .cdt-list-kicker{margin:0;color:#087d77;font-size:11px;font-weight:800;letter-spacing:.17em;line-height:1.5}
.cdt-hub .cdt-hero h2{margin:12px 0 14px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#183239!important;font-size:clamp(26px,4vw,39px)!important;line-height:1.35!important;letter-spacing:-.025em}
.cdt-hub .cdt-hero h2::before,.cdt-hub .cdt-hero h2::after,.cdt-hub .cdt-section-head h3::before,.cdt-hub .cdt-section-head h3::after,.cdt-hub .cdt-list-head h3::before,.cdt-hub .cdt-list-head h3::after{content:none!important;display:none!important}
.cdt-hub .cdt-hero-copy{max-width:560px;margin:0!important;color:#435961;font-size:15px;line-height:1.85}
.cdt-hub .cdt-search-wrap{max-width:620px;margin-top:29px}
.cdt-hub .cdt-search-label{margin:0 0 8px;color:#243b42;font-size:13px;font-weight:800}
.cdt-hub .cdt-search{min-height:52px;margin:0;padding:11px 17px;border:1px solid #aac7c3;border-radius:10px;background:#fff;color:#21313a;font-size:15px;box-shadow:0 3px 12px rgba(21,84,73,.045)}
.cdt-hub .cdt-search:focus-visible{outline:3px solid rgba(8,125,119,.25);outline-offset:2px;border-color:#087d77}
.cdt-hub .cdt-hero-note{margin:11px 0 0!important;color:#627770;font-size:12px}
.cdt-hub .cdt-directory{margin:0}
.cdt-hub .cdt-section-head h3,.cdt-hub .cdt-list-head h3{margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#21313a!important;font-size:20px!important;line-height:1.4!important}
.cdt-hub .cdt-section-head p{margin:4px 0 0;color:var(--cdt-muted);font-size:13px}
.cdt-hub .cdt-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:17px 0 34px}
.cdt-hub .cdt-tab{display:inline-flex;align-items:center;gap:8px;justify-content:center;min-height:39px;margin:0;padding:7px 14px;border:1px solid #d5e3e0;border-radius:9px;background:#fff;color:#344a50!important;font-size:13px;font-weight:700;line-height:1.35;text-decoration:none!important;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.cdt-hub .cdt-tab span{color:#78918e;font-size:11px;font-weight:700}
.cdt-hub .cdt-tab:hover{border-color:#087d77;background:#f1f8f6}
.cdt-hub .cdt-tab.is-active,.cdt-hub .cdt-tab[aria-pressed="true"]{border-color:#087d77;background:#087d77;color:#fff!important}
.cdt-hub .cdt-tab.is-active span{color:#ddf4ef}
.cdt-hub .cdt-tab:focus-visible,.cdt-hub .cdt-card a:focus-visible,.cdt-hub .cdt-favorite:focus-visible{outline:3px solid #087d77;outline-offset:3px}
.cdt-hub .cdt-list-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:0 0 16px;padding-bottom:15px;border-bottom:1px solid var(--cdt-line)}
.cdt-hub .cdt-list-kicker{margin:0 0 5px}
.cdt-hub .cdt-list-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.cdt-hub .cdt-count{font-size:13px;color:var(--cdt-muted);white-space:nowrap}
.cdt-hub .cdt-favorites-filter{min-height:36px}
.cdt-hub .cdt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:13px}
.cdt-hub .cdt-card{min-height:178px;padding:19px 19px 42px;border:1px solid #dce6e3;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(29,70,65,.025);transition:transform .15s,border-color .15s,box-shadow .15s}
.cdt-hub .cdt-card:hover,.cdt-hub .cdt-card:focus-within{transform:translateY(-2px);border-color:#087d77;box-shadow:0 8px 24px rgba(8,85,77,.1)}
.cdt-hub .cdt-card h3{position:static!important;margin:12px 29px 9px 0!important;padding:0!important;font-size:17px!important;line-height:1.45!important;font-weight:800}
.cdt-hub .cdt-card h3 a{color:#21313a!important;text-decoration:none!important}
.cdt-hub .cdt-card p{margin:0!important;color:#64747a;font-size:13px;line-height:1.7}
.cdt-hub .cdt-category{display:inline-block;padding:3px 8px;border-radius:5px;background:#edf6f3;color:#087d77;font-size:11px;font-weight:700;line-height:1.5}
.cdt-hub .cdt-card-arrow{position:absolute;bottom:13px;right:19px;color:#087d77;font-size:20px;line-height:1}
.cdt-hub .cdt-card .cdt-favorite{top:15px;right:15px;z-index:2;min-width:34px;min-height:34px;padding:0;border:0;border-radius:7px;background:#f0f5f4;color:#087d77;font-size:21px}
.cdt-hub .cdt-card .cdt-favorite:hover{background:#dcefeb}
.cdt-hub .cdt-card[hidden]{display:none!important}
.cdt-hub .cdt-empty{margin:12px 0;padding:35px 20px;border:1px dashed #cbded9;border-radius:12px;background:#f7faf9;color:#51676a;text-align:center}
@media(max-width:600px){.cdt-hub{margin-top:8px}.cdt-hub .cdt-hero{margin-bottom:29px;padding:25px 21px}.cdt-hub .cdt-hero::after{right:-180px}.cdt-hub .cdt-hero-copy{font-size:14px}.cdt-hub .cdt-tabs{gap:7px;margin-bottom:29px}.cdt-hub .cdt-tab{min-height:38px;padding:7px 11px}.cdt-hub .cdt-list-head{align-items:start}.cdt-hub .cdt-list-actions{gap:7px;flex-direction:column-reverse;align-items:end}.cdt-hub .cdt-grid{grid-template-columns:1fr}.cdt-hub .cdt-card{min-height:0;padding-bottom:37px}}
@media(prefers-reduced-motion:reduce){.cdt-hub .cdt-card,.cdt-hub .cdt-tab{transition:none}.cdt-hub .cdt-card:hover{transform:none}}
