.directoryPage,.directoryItemPage{max-width:1320px;margin:22px auto;padding:0 18px}
.directoryHero{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e5e7eb;border-radius:24px;padding:28px;box-shadow:0 14px 38px rgba(15,23,42,.07);display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:18px}
.directoryHero h1{font-size:42px;margin:8px 0;letter-spacing:-.04em}.directoryHero p{color:#64748b;font-size:18px;margin:0}.directoryHero button,.directoryForm button{background:#078438;color:white;border-radius:16px;padding:13px 18px;font-weight:900}
.directoryForm{background:white;border:1px solid #e5e7eb;border-radius:22px;padding:22px;box-shadow:0 10px 28px rgba(15,23,42,.06);margin-bottom:18px}.directoryForm.hidden{display:none}.directoryFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.directoryFormGrid textarea{grid-column:1/-1;min-height:100px}.directoryForm input,.directoryForm textarea,.directoryForm select,.directorySide input{border:1px solid #dbe3ea;border-radius:14px;padding:12px;font:inherit;width:100%}.checkLine{display:flex;gap:8px;align-items:center;color:#475569}.checkLine input{width:auto}
.directoryFilters{display:flex;gap:8px;overflow:auto;margin-bottom:18px}.directoryFilters button{background:#f1f5f9;border-radius:999px;padding:10px 14px;font-weight:900;white-space:nowrap}.directoryFilters button.active{background:#078438;color:white}
.directoryLayout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:18px}.directorySide{background:white;border:1px solid #e5e7eb;border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.06);height:max-content;display:grid;gap:12px}
.directoryGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.directoryCard{background:white;border:1px solid #e5e7eb;border-radius:22px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.06);cursor:pointer}.directoryCard:hover{background:#f8fafc}.directoryIcon{width:54px;height:54px;border-radius:16px;background:#e8f8ed;display:grid;place-items:center;font-size:26px;margin-bottom:12px;overflow:hidden}.directoryIcon img{width:100%;height:100%;object-fit:cover}.directoryCard h3{margin:0 0 8px;font-size:21px}.directoryCard p{color:#475569}.directoryMeta{display:flex;gap:10px;flex-wrap:wrap;color:#64748b;font-size:14px}.rating{color:#f59e0b;font-weight:900}
.directoryFull{background:white;border:1px solid #e5e7eb;border-radius:24px;box-shadow:0 14px 38px rgba(15,23,42,.07);padding:28px}.directoryFullTop{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:center}.directoryFullIcon{width:84px;height:84px;border-radius:24px;background:#e8f8ed;display:grid;place-items:center;font-size:40px;overflow:hidden}.directoryFullIcon img{width:100%;height:100%;object-fit:cover}.directoryFull h1{font-size:36px;margin:0 0 8px;letter-spacing:-.04em}.directoryActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.directoryActions button,.reviewForm button{background:#078438;color:white;border-radius:14px;padding:12px 14px;font-weight:900}.directoryGridFull{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-top:18px}.directoryBox{background:#f8fafc;border-radius:18px;padding:16px}.reviewItem{border-bottom:1px solid #e5e7eb;padding:12px 0}.reviewItem:last-child{border-bottom:0}.reviewForm{display:grid;gap:10px;margin-top:12px}.reviewForm input,.reviewForm textarea,.reviewForm select{border:1px solid #dbe3ea;border-radius:12px;padding:10px}.backLink{display:inline-block;margin-bottom:14px;color:#078438;font-weight:900;text-decoration:none}
@media(max-width:1000px){.directoryLayout,.directoryGridFull{grid-template-columns:1fr}.directoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.directoryHero{display:block}.directoryHero button{margin-top:16px}}
@media(max-width:650px){.directoryGrid,.directoryFormGrid{grid-template-columns:1fr}.directoryFormGrid textarea{grid-column:auto}.directoryHero h1{font-size:32px}.directoryFullTop{grid-template-columns:1fr}.directoryFull h1{font-size:30px}}
