.cfa-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.cfa-card{min-width:0;border:1px solid #e1e5eb;border-radius:8px;background:#fff;overflow:hidden;display:flex;flex-direction:column}
.cfa-poster{display:block;aspect-ratio:3/4;background:#f3f5f7;padding:12px}
.cfa-poster img{display:block;width:100%;height:100%;object-fit:contain}
.cfa-poster:focus-visible,.cfa-apply:focus-visible{outline:3px solid #087f77;outline-offset:3px}
.cfa-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1;min-width:0}
.cfa-body h3{font-size:19px;line-height:1.35;margin:0;overflow-wrap:anywhere;letter-spacing:0}
.cfa-body p{font-size:14px;line-height:1.6;color:#5d6876;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.cfa-status{align-self:flex-start;font-size:12px;font-weight:700;color:#146451;background:#e8f5ef;padding:4px 8px;border-radius:4px}
.cfa-status.soon{color:#8b5711;background:#fff1d9}.cfa-status.closed{color:#616974;background:#edf0f3}
.cfa-tags{display:flex;flex-wrap:wrap;gap:6px}
.cfa-tag{font-size:12px;background:#edf2f8;color:#36556d;border-radius:4px;padding:3px 7px;overflow-wrap:anywhere;max-width:100%}
.cfa-apply{margin-top:auto;padding-top:4px;font-size:14px;font-weight:700;color:#087f77}
.cfa-admin-preview{width:120px;height:160px;object-fit:contain;background:#f3f5f7;border-radius:6px}
.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.admin-form-grid>.full{grid-column:1/-1;min-width:0}
.admin-form-grid>label{display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:14px;min-width:0}
.admin-form-grid input:not([type=checkbox]),.admin-form-grid select,.admin-form-grid textarea{width:100%;min-width:0;box-sizing:border-box;padding:11px 12px;border:1px solid #dbe1e8;border-radius:6px;background:#fff;color:#243244;font:inherit;font-weight:400}
.admin-form-grid small{font-size:12px;font-weight:400;color:#5d6876}
.admin-form-grid>.check-row{flex-direction:row;align-items:center}
.admin-form-grid input[type=checkbox]{width:18px;height:18px;flex-shrink:0}
@media(max-width:600px){.admin-form-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1050px){.cfa-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cfa-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:480px){.cfa-gallery{grid-template-columns:minmax(0,1fr)}}
