.cf-dir{max-width:var(--container-max,1280px);margin:auto;padding:3rem 2rem 4rem;font-family:var(--font-body,Inter,sans-serif);color:var(--color-text,#F5F0EB)}
.cf-dir *{box-sizing:border-box;min-width:0}.cf-dir [hidden]{display:none!important}.cf-dir :where(h1,h2,h3,p,a,label,button,small){overflow-wrap:anywhere}
.cf-dir__hero{max-width:760px;margin:0 auto 2.5rem;text-align:center}.cf-dir__hero h1{font-size:clamp(2.5rem,6vw,4rem);margin:.65rem 0 1rem}.cf-dir__hero p{margin:auto}
.cf-dir__kicker{display:inline-block;color:var(--color-accent,#C8922A);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--color-accent,#C8922A);padding:.25rem .8rem;border-radius:2rem}
.cf-dir__actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:1.5rem}.cf-dir .btn{white-space:normal;line-height:1.3;max-width:100%}
.cf-dir__filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:1rem;align-items:end;padding:1.25rem;background:var(--color-card-bg,#242424);border:1px solid var(--color-border,#333333);border-radius:var(--radius,6px)}
.cf-dir label{display:block;font-size:.85rem;color:var(--color-text,#F5F0EB);line-height:1.6}.cf-dir input:not([type=checkbox]),.cf-dir select,.cf-dir textarea{display:block;width:100%;margin-top:.4rem;background:var(--color-bg,#1a1a1a);color:var(--color-text,#F5F0EB);border:1px solid #77716b;border-radius:var(--radius,6px);padding:.7rem .8rem;font:inherit;font-size:1rem}
.cf-dir :focus-visible{outline:3px solid var(--color-accent,#C8922A);outline-offset:3px}.cf-dir__count{margin:1.25rem 0;color:var(--color-text,#F5F0EB)}
.cf-dir__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.cf-dir__card{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem;background:var(--color-card-bg,#242424);border:1px solid var(--color-border,#333333);border-radius:var(--radius,6px)}
.cf-dir__card h3{font-size:1.8rem}.cf-dir__card p{color:#c4bdb6}.cf-dir__tags{display:flex;flex-wrap:wrap;gap:.35rem}.cf-dir__tag{border:1px solid #77716b;border-radius:2rem;padding:.15rem .6rem;font-size:.8rem;color:var(--color-text,#F5F0EB)}
.cf-dir__links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto}.cf-dir a:not(.btn){color:var(--color-accent,#C8922A);text-decoration:underline;text-underline-offset:.2em}.cf-dir small,.cf-dir__note{color:#c4bdb6;font-size:.85rem}.cf-dir__card small{margin-top:.35rem}
.cf-dir__empty,.cf-dir__preview{padding:1.25rem;border:1px solid var(--color-accent,#C8922A);border-radius:var(--radius,6px);margin:1.25rem 0}.cf-dir__preview strong{display:block;color:var(--color-accent,#C8922A)}
.cf-dir__lower{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-top:3rem;align-items:start}.cf-dir__form,.cf-dir__aside{padding:1.5rem;border:1px solid var(--color-border,#333333);border-radius:var(--radius,6px);background:var(--color-card-bg,#242424)}
.cf-dir__form h2,.cf-dir__aside h2{font-size:2rem;margin-bottom:.75rem}.cf-dir fieldset{border:0;border-top:1px solid var(--color-border,#333333);padding:1.25rem 0 0;margin:1.25rem 0}.cf-dir legend{font-weight:600;padding-right:.75rem}
.cf-dir__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:.85rem 0}.cf-dir__checks{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0}.cf-dir__check{display:flex!important;align-items:flex-start;gap:.6rem;margin:.65rem 0}.cf-dir input[type=checkbox]{flex:none;width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--color-accent,#C8922A)}
.cf-dir__aside p{margin-bottom:1rem}.cf-dir__aside .btn{width:100%;margin:.5rem 0 1.5rem}.cf-dir__footer{margin-top:2rem;border-top:1px solid var(--color-border,#333333);padding-top:1rem}
@media(max-width:900px){.cf-dir__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cf-dir__lower{grid-template-columns:1fr}.cf-dir__filters{grid-template-columns:1fr 1fr}.cf-dir__filters>label:first-child{grid-column:1/-1}}
@media(max-width:560px){.cf-dir{padding:2rem 1rem 3rem}.cf-dir__grid,.cf-dir__row,.cf-dir__filters{grid-template-columns:1fr}.cf-dir__filters>label:first-child{grid-column:auto}.cf-dir__actions .btn{width:100%}.cf-dir__card,.cf-dir__form,.cf-dir__aside{padding:1.1rem}.cf-dir__checks{flex-direction:column}}
