.ko-form{display:grid;gap:1.1rem;max-width:820px;margin:0 auto;padding:clamp(1.25rem,4vw,2.5rem);background:#fff;border:1px solid rgba(17,24,32,.12);border-radius:24px;box-shadow:0 18px 50px rgba(17,24,32,.06)}
.ko-form-intro span{color:#8a6400;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ko-form-intro h2{margin:.35rem 0 .45rem;font-size:clamp(1.65rem,4vw,2.45rem)}
.ko-form-intro p{margin:0;color:#67717c}
.ko-form label{display:grid;gap:.45rem;color:#111820;font-weight:700}
.ko-form label span{font-weight:500;color:#67717c}
.ko-form input:not([type=checkbox]),.ko-form textarea,.ko-report textarea{width:100%;box-sizing:border-box;border:1px solid rgba(17,24,32,.22);border-radius:12px;background:#fbfaf7;padding:.9rem 1rem;font:inherit;color:#111820}
.ko-form input:focus,.ko-form textarea:focus,.ko-report textarea:focus{outline:3px solid rgba(242,183,5,.28);border-color:#9a7400}
.ko-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.ko-form .ko-check{display:flex;align-items:flex-start;gap:.65rem;font-weight:500;line-height:1.55}
.ko-form .ko-check input{margin-top:.3rem}
.ko-button{display:inline-flex;justify-content:center;align-items:center;gap:.45rem;min-height:44px;padding:.7rem 1rem;border:1px solid #111820;border-radius:999px;background:#fff;color:#111820;font:inherit;font-weight:800;text-decoration:none;cursor:pointer}
.ko-button-primary{background:#f2b705;border-color:#f2b705}
.ko-button:hover{transform:translateY(-1px)}
.ko-follow-button span{font-size:.78em;opacity:.7}
.ko-follow-button.is-following{background:#111820;color:#fff}
.ko-profile-follow{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-top:.65rem}
.ko-profile-follow>span{display:inline-flex;gap:.25rem;color:#59636f;font-size:.82rem}
.ko-profile-follow .ko-follow-button{margin:0}
.ko-directory-follow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem .65rem;margin-top:.7rem}
.ko-directory-follow>span{display:inline-flex;gap:.22rem;color:#59636f;font-size:.78rem}
.ko-directory-follow .ko-follow-button{min-height:38px;padding:.5rem .8rem;font-size:.82rem}
.ko-notice,.ko-empty{padding:1rem 1.1rem;border-radius:12px;background:#f4f1ea;color:#111820}
.ko-success{border-left:4px solid #2c8c66}.ko-error{border-left:4px solid #b33434}
.ko-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}
.ko-member-card{padding:1.25rem;border:1px solid rgba(17,24,32,.12);border-radius:18px;background:#fff;text-align:center}
.ko-member-card img{border-radius:50%}.ko-member-card h3{margin:.8rem 0 .25rem}
.ko-report{margin-top:2rem}.ko-report summary{cursor:pointer;color:#67717c}.ko-report form{display:grid;gap:.75rem;max-width:540px;padding:1rem 0}.ko-report label{display:grid;gap:.5rem}
@media(max-width:640px){.ko-form-row{grid-template-columns:1fr}.ko-form{border-radius:18px}}
.ko-submission-success{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.15rem;align-items:start;margin:0 0 1.5rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid rgba(17,24,32,.12);border-radius:20px;background:#fffaf0;box-shadow:0 16px 45px rgba(17,24,32,.08);color:#111820}
.ko-submission-success__mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#f2b705;color:#111820;font-size:1.25rem;font-weight:900}
.ko-submission-success__eyebrow{margin:0 0 .35rem;color:#8a6500;font-size:.76rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.ko-submission-success h2{margin:0 0 .55rem;color:#111820;font-size:clamp(1.25rem,2.5vw,1.75rem);line-height:1.2;letter-spacing:-.025em}
.ko-submission-success__content>p:not(.ko-submission-success__eyebrow){margin:0;color:#5f6670;line-height:1.65}
.ko-submission-success__actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.15rem}
.ko-submission-success__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;border-radius:999px;font-weight:800;text-decoration:none}
.ko-submission-success__primary{background:#f2b705;color:#111820}
.ko-submission-success__secondary{border:1px solid #111820;background:transparent;color:#111820}
@media(max-width:640px){.ko-submission-success{grid-template-columns:1fr;text-align:center}.ko-submission-success__mark{margin-inline:auto}.ko-submission-success__actions{display:grid;grid-template-columns:1fr}.ko-submission-success__actions a{width:100%;box-sizing:border-box}}
