.tjm-wrap{max-width:980px;margin:20px auto;padding:16px}
.tjm-row{display:flex;gap:12px;flex-wrap:wrap}
.tjm-field{flex:1;min-width:260px}
.tjm-field label{display:block;font-weight:800;margin-bottom:6px}
.tjm-field input[type=file], .tjm-field select{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:#fbfdff}
.tjm-dates{display:grid;gap:8px;max-height:220px;overflow:auto}
.tjm-dates label{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid #e5e7eb;border-radius:12px;background:#fbfdff}
.tjm-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:2px solid #6c2bd9;border-radius:999px;background:#fff;color:#6c2bd9;font-weight:800;margin-top:10px;cursor:pointer;text-decoration:none}
.tjm-btn:hover{background:#6c2bd9;color:#fff}
.tjm-btn.ghost{background:#f8f5ff;color:#6c2bd9;border-color:#e9d5ff}
.tjm-btn.ghost:hover{background:#6c2bd9;color:#fff;border-color:#6c2bd9}
.tjm-error{color:#b91c1c;margin-top:8px}
.tjm-modal{position:fixed;inset:0;display:none;z-index:99999}
.tjm-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.36)}
.tjm-card{position:relative;background:#fff;max-width:820px;margin:8vh auto;padding:16px;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.12)}
.tjm-card input,.tjm-card select{padding:10px 12px;border:1px solid #e5e7eb;border-radius:12px;width:100%}
@media(max-width:700px){.tjm-card{margin:4vh 12px}}